using SKMC.Api.Process.Model; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace SKMC.Api.Process { /// /// 流程站点的数据持久化接口 /// public abstract class ProcessStorage { #region StationStatus /// /// 从持久化加载流程站点的特定物料状态 /// /// 流程站点对象 /// 物料类型号, 如果为-1表示全部 /// 如果对象中该matType存在是否覆盖 public abstract void LoadStationStatus(ProcessStation processStation, int[] matTypes, bool loadOverride = true); /// /// 从持久化加载流程站点的所有物料状态 /// /// 流程站点对象 /// 如果对象中该matType存在是否覆盖 public abstract void LoadStationStatusAll(ProcessStation processStation, bool loadOverride = true); /// /// 持久化保存流程站点的特定物料状态 /// /// 流程站点对象 /// 物料类型号, 如果为-1表示全部 /// 如果数据库中该matType存在是否覆盖 public abstract void SaveStationStatus(ProcessStation processStation, int[] matTypes, bool saveOverride = true); /// /// 持久化保存流程站点的所有物料状态 /// /// 流程站点对象 /// 如果数据库中该matType存在是否覆盖 public abstract void SaveStationStatusAll(ProcessStation processStation, bool saveOverride = true); /// /// 从持久化删除流程站点的特定物料状态 /// /// 流程站点对象 /// 物料类型号, 如果为-1表示全部 public abstract void DeleteStationStatus(ProcessStation processStation, int[] matTypes); /// /// 从持久化删除流程站点的所有物料状态 /// /// 流程站点对象 public abstract void DeleteStationStatusAll(ProcessStation processStation); #endregion #region StationData /// /// 从持久化加载某个流程站点的指定Data数据到ProcessStation对象中 /// 流程站点对象 /// 指定的数据键 /// 如果对象中该key存在是否覆盖 /// public abstract void LoadStationData(ProcessStation processStation, string[] keys, bool loadOverride = true); /// /// 从持久化加载某个流程站点的所有Data数据到ProcessStation对象中 /// /// 流程站点对象 /// 如果对象中该key存在是否覆盖 public abstract void LoadStationDataAll(ProcessStation processStation, bool loadOverride = true); /// /// 持久化保存某个流程站点的指定Data数据 /// /// 流程站点对象 /// 指定的数据键 /// 如果数据库中该key存在是否覆盖 public abstract void SaveStationData(ProcessStation processStation, string[] keys, bool saveOverride = true); /// /// 持久化保存某个流程站点的所有Data数据 /// /// 流程站点对象 /// 如果数据库中该key存在是否覆盖 public abstract void SaveStationDataAll(ProcessStation processStation, bool saveOverride = true); /// /// 从持久化删除某个流程站点的指定Data数据 /// /// 流程站点对象 /// 指定的数据键 public abstract void DeleteStationData(ProcessStation processStation, string[] keys); /// /// 从持久化删除某个流程站点的所有Data数据 /// /// 流程站点对象 public abstract void DeleteStationDataAll(ProcessStation processStation); #endregion } }