void IDataUpdateTrigger.OnDataSaved(EditDataObject entity, DataOperatorType operatorType) { }
/// <summary> /// 更新语句后处理(单个实体操作不引发) /// </summary> /// <param name="operatorType">操作类型</param> /// <param name="tag">其它参数</param> private void OnEvent(DataOperatorType operatorType, string tag) { DataUpdateHandler.EventProxy?.OnStatusChanged(DataBase.Name, Name, operatorType, tag); }
/// <summary> /// 更新语句后处理(单个实体操作不引发) /// </summary> /// <param name="operatorType">操作类型</param> /// <param name="entity">其它参数</param> private void OnEvent(DataOperatorType operatorType, TData entity) { DataUpdateHandler.EventProxy?.OnStatusChanged(DataBase.Name, Name, operatorType, JsonConvert.SerializeObject(entity)); }
/// <summary> /// 保存完成后期处理 /// </summary> /// <param name="entity">保存的对象</param> /// <param name="operatorType">操作类型</param> private void OnDataSaved(TData entity, DataOperatorType operatorType) { OnDataSaved(operatorType, entity); DataUpdateHandler.OnDataSaved(entity, operatorType); }
/// <summary> /// 更新语句后处理(单个实体操作不引发) /// </summary> /// <param name="condition">执行条件</param> /// <param name="args">参数值</param> /// <param name="operatorType">操作类型</param> private void OnOperatorExecutd(string condition, IEnumerable <MySqlParameter> args, DataOperatorType operatorType) { var mySqlParameters = args as MySqlParameter[] ?? args.ToArray(); OnOperatorExecutd(operatorType, condition, mySqlParameters); DataUpdateHandler.OnOperatorExecutd(TableId, condition, mySqlParameters, operatorType); }
/// <summary> /// 更新语句后处理(单个实体操作不引发) /// </summary> /// <param name="condition">执行条件</param> /// <param name="args">参数值</param> /// <param name="operatorType">操作类型</param> protected virtual void OnOperatorExecutd(DataOperatorType operatorType, string condition, IEnumerable <MySqlParameter> args) { }
/// <summary> /// 保存前处理 /// </summary> /// <param name="entity">保存的对象</param> /// <param name="operatorType">操作类型</param> private void OnPrepareSave(TData entity, DataOperatorType operatorType) { OnPrepareSave(operatorType, entity); DataUpdateHandler.OnPrepareSave(entity, operatorType); }
/// <summary> /// 保存前处理 /// </summary> /// <param name="entity">保存的对象</param> /// <param name="operatorType">操作类型</param> protected virtual void OnPrepareSave(DataOperatorType operatorType, TData entity) { }
/// <summary> /// 保存完成后期处理 /// </summary> /// <param name="entity">保存的对象</param> /// <param name="operatorType">操作类型</param> protected virtual void OnDataSaved(DataOperatorType operatorType, TData entity) { }
/// <summary> /// 更新语句前处理(单个实体操作不引发) /// </summary> /// <param name="condition">执行条件</param> /// <param name="args">参数值</param> /// <param name="operatorType">操作类型</param> private void OnOperatorExecuting(string condition, IEnumerable <DbParameter> args, DataOperatorType operatorType) { var sqlParameters = args as DbParameter[] ?? args.ToArray(); OnOperatorExecuting(operatorType, condition, sqlParameters); DataUpdateHandler.OnOperatorExecuting(this, condition, sqlParameters, operatorType); }
/// <summary> /// 更新语句后处理(单个实体操作不引发) /// </summary> /// <param name="entityId">实体类型ID</param> /// <param name="condition">执行条件</param> /// <param name="args">参数值</param> /// <param name="operatorType">操作类型</param> public static void OnOperatorExecutd(int entityId, string condition, IEnumerable <DbParameter> args, DataOperatorType operatorType) { if (_triggers == null) { return; } var mySqlParameters = args as DbParameter[] ?? args.ToArray(); if (Triggers.ContainsKey(entityId)) { foreach (var trigger in Triggers[entityId]) { trigger.OnOperatorExecutd(entityId, condition, mySqlParameters, operatorType); } } if (!Triggers.ContainsKey(0)) { return; } foreach (var trigger in Triggers[0]) { trigger.OnOperatorExecutd(entityId, condition, mySqlParameters, operatorType); } }
void IDataUpdateTrigger.OnPrepareSave(EditDataObject entity, DataOperatorType operatorType) { }
void IDataUpdateTrigger.OnOperatorExecuting(int entityId, string condition, IEnumerable <DbParameter> args, DataOperatorType operatorType) { }
/// <summary> /// 更新语句后处理(单个实体操作不引发) /// </summary> /// <param name="table">当前数据操作对象</param> /// <param name="condition">执行条件</param> /// <param name="args">参数值</param> /// <param name="operatorType">操作类型</param> public static void OnOperatorExecuted <TEntity>(IDataTable <TEntity> table, string condition, IEnumerable <DbParameter> args, DataOperatorType operatorType) where TEntity : EditDataObject, new() { foreach (var trigger in DependencyHelper.GetServices <IDataTrigger>()) { trigger.OnOperatorExecuted(table, condition, args, operatorType); } }
/// <summary> /// 更新语句后处理(单个实体操作不引发) /// </summary> /// <param name="entityId">实体类型ID</param> /// <param name="condition">执行条件</param> /// <param name="args">参数值</param> /// <param name="operatorType">操作类型</param> public static void OnOperatorExecutd(int entityId, string condition, IEnumerable <DbParameter> args, DataOperatorType operatorType) { var mySqlParameters = args as DbParameter[] ?? args.ToArray(); foreach (var trigger in _generalTriggers) { trigger.OnOperatorExecutd(entityId, condition, mySqlParameters, operatorType); } if (_triggers != null && _triggers.TryGetValue(entityId, out var triggers)) { foreach (var trigger in triggers) { trigger.OnOperatorExecutd(entityId, condition, mySqlParameters, operatorType); } } }
///// <summary> ///// 保存完成后期处理(Insert或Update) ///// </summary> ///// <param name="entity"></param> //protected override void OnDataSaved(PageItemData entity) //{ // using (var proxy = new RedisProxy()) // { // proxy.RefreshCache<PageItemData, PageItemDataAccess>(entity.Id); // var keys = proxy.Client.SearchKeys("ui:PageTree:*"); // proxy.Client.RemoveAll(keys); // } // base.OnDataSaved(entity); //} protected override void OnPrepareSave(DataOperatorType operatorType, PageItemData entity) { entity.Json = JsonConvert.SerializeObject(entity.Config); base.OnPrepareSave(operatorType, entity); }