|
配置文件 向系统注册插件的功能文件,需要保证插件生成的文件名与命名空间名称一致
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using ESoft.Public;
- using ESToolkit;
- namespace TestPlugin
- {
- public class TestPlugin : IESPlugin
- {
- /// <summary>
- /// 插件名称
- /// </summary>
- public string Name { get { return "测试"; } }
- /// <summary>
- /// 描述
- /// </summary>
- public string Description { get { return "这是一个测试插件"; } }
- /// <summary>
- /// 版本好
- /// </summary>
- public string Version { get { return "V1.0.0.1"; } }
- /// <summary>
- /// 作者
- /// </summary>
- public string Author { get { return "ECHO"; } }
- /// <summary>
- /// 钩子列表
- /// </summary>
- public List<Hook> Hooks { get { return hooks; } }
- private List<Hook> hooks = new List<Hook>();
- public TestPlugin() {
- hooks.AddRange(new Hook[] {
- new Hook{ MCA="SO.SaleOrderInner.Confirm",Class="SaleOrderInner"},
- });
- }
- }
- }
复制代码
代码说明:
- new Hook{ MCA="SO.SaleOrderInner.Confirm",Class="SaleOrderInner"}
复制代码 上式代码 MCA 表示 嵌入在哪里(即在那处执行代码),Class 为本插件需要执行的代码。
实际嵌入的控制代码
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using ESoft.Public;
- using ESToolkit;
- using ESoft.Script;
- using ESoft.Public.Class;
- using ESoft.FormControl.Base;
- namespace TestPlugin
- {
- class SaleOrderInner : PluginScript
- {
- public override void SetObject(object obj)
- {
- BaseAll baseAll = obj as BaseAll;
- baseAll.BeforeConfirm += BaseAll_BeforeConfirm;
- }
- private void BaseAll_BeforeConfirm(object sender, BaseAll.ESBeforeOperateEventArgs e)
- {
- //throw new NotImplementedException();
- }
- public void Confirm_Before(ESPluginParam param) {
- param.Cancel = true;
- param.Obj = "这是第一个插件进行功能测试,by ECHO";
- }
- public void Confirm_After(ESPluginParam param)
- {
-
- }
- }
- }
复制代码 代码说明:
- baseAll.BeforeConfirm += BaseAll_BeforeConfirm;
复制代码 确认前的事件,这类事件有 保存前,保存中,保存后,确认前,确认中,确认后,审核前,审核后,删除前,删除中,删除后 等等事件
- public void XXX_Before(ESPluginParam param) {}
复制代码 XXX_Before 为前执行
XXX_After 为后执行
具体源码请下载附件
|
|