| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128 |
- using System.Linq;
- using SHJX.Service.Model.Dao;
- using SHJX.Service.Common.ReadXML;
- using System.Collections.Generic;
- namespace SHJX.Service.Dao
- {
- public class MainManager : DataManagerImp
- {
- public MainManager(ReadConfigUtil config)
- {
- InitData(config);
- }
- public List<EquipmentTask> GetExistTask()
- {
- TaskState[] states = { TaskState.New, TaskState.Waiting, TaskState.Doing };
- return Db.Queryable<EquipmentTask>().Where(item => states.Contains(item.Status) && item.TaskType!= "润洗" && item.TaskType != "清洗").ToList();
- }
- public List<Wavekey> GetWavekeys()
- {
- return Db.Queryable<Wavekey>().OrderBy(item => item.WaveKey, SqlSugar.OrderByType.Desc).ToList();
- }
- public List<EquipmentTask> QueryTaskByUuid(string uuid, params TaskState[] states)
- {
- return Db.Queryable<EquipmentTask>()
- .Where(item => item.WaveKey.Equals(uuid))
- .Where(item => states.Contains(item.Status))
- .Clone()
- .ToList();
- }
- public Batch GetBatch()
- {
- return Db.Queryable<Batch>().OrderBy(item=>item.Createtime, SqlSugar.OrderByType.Desc).First();
- }
- public List<EquipmentTask> GetHeatingTaskAtPresent()
- {
- TaskState[] states = { TaskState.Doing, TaskState.New };
- var res = Db.Queryable<EquipmentTask>().Where(item => item.RouteStep.Equals("Liquid_Heating") && states.Contains(item.Status)).ToList();
- return res;
- }
- /// <summary>
- /// 查询任务列表
- /// </summary>
- /// <param name="pointName"></param>
- /// <returns></returns>
- public bool QueryContainTask(string pointName) =>
- Db.Queryable<EquipmentTask>()
- .Where(item => item.OriginLocalName.Equals(pointName)
- && (item.Status.Equals(TaskState.Doing)
- || item.Status.Equals(TaskState.New)))
- .Any();
- /// <summary>
- /// 删除
- /// </summary>
- /// <param name="pointName"></param>
- /// <returns></returns>
- public void QuerydeledeTask(string pointName) =>
- Db.Deleteable<EquipmentTask>().Where(item => item.OriginLocalName.Equals(pointName) && item.TaskType.Equals("补杯")).ExecuteCommand();
- public void QuerydeledeEmptyCupTask(string pointName) =>
- Db.Deleteable<EquipmentTask>().Where(item => item.OriginLocalName.Equals(pointName)).ExecuteCommand();
- public EquipmentStatus CheckHeatRodStatus()
- {
- return Db.Queryable<EquipmentStatus>().First(item => item.EquipmentName.Equals("HeatRod"));
- }
- /// <summary>
- /// 获取剩余润洗任务
- /// </summary>
- /// <returns></returns>
- public List<EquipmentTask> GetResidueWashTask() =>
- Db.Queryable<EquipmentTask>()
- .Where(item => item.RouteType.Equals("Wash"))
- .Where(item => item.Status.Equals(TaskState.Doing) || item.Status.Equals(TaskState.New))
- .ToList();
- /// <summary>
- /// 获取存在的执行或新建的任务
- /// </summary>
- /// <returns></returns>
- public List<EquipmentTask> GetEquipmentTasks()
- {
- TaskState[] states = { TaskState.Doing, TaskState.New };
- var waveKey = Db.Queryable<EquipmentTask>().Where(item => states.Contains(item.Status)).GroupBy(item => item.WaveKey).First()?.WaveKey;
- return Db.Queryable<EquipmentTask>().Where(item => item.WaveKey.Equals(waveKey)).ToList();
- }
- public List<EquipmentTask> GetEquipmentTasks(EquipmentTask task)
- {
- TaskState[] states = { TaskState.Doing, TaskState.New };
- var waveKey = Db.Queryable<EquipmentTask>().Where(item => states.Contains(item.Status)).GroupBy(item => item.WaveKey).First()?.WaveKey;
- return Db.Queryable<EquipmentTask>().Where(item => item.WaveKey.Equals(waveKey)).ToList();
- }
- public List<EquipmentTask> GetEquipmentTasksBD(string waveKey)
- {
- return Db.Queryable<EquipmentTask>().Where(item => item.WaveKey.Equals(waveKey) && item.Status.Equals(TaskState.Finished)).ToList();
- }
- public List<EquipmentTask> GetTaskByConcentration(params string[] values)
- {
- var guid = values[0];
- var concentration = values[1];
- return Db.Queryable<EquipmentTask>()
- .Where(item => item.WaveKey.Equals(guid)
- && item.SampleConcentration.Equals(concentration))
- ?.ToList();
- }
- public List<EquipmentArea> GetAreasByDisable()
- {
- return Db.Queryable<EquipmentArea>().Where(item => item.Status.Equals(false)).ToList();
- }
- public EquipmentStatus GetEquipmentStatusByName(string name)
- {
- return Db.Queryable<EquipmentStatus>().First(item => item.EquipmentName.Equals(name));
- }
- public PID GetPid(string type) => Db.Queryable<PID>().First(item => item.TypeName.Equals(type));
- }
- }
|