public PluginPackAttribute GetAttribute() { if (this._attr == null) { this._attr = PluginUtil.GetAttribute(this); } return this._attr; }
/// <summary> /// 获取插件 /// </summary> /// <param name="workerIndent"></param> /// <returns></returns> public static IPlugin GetPlugin(string workerIndent, out PluginPackAttribute attr) { var plugins = BasePluginHost.plugins; foreach (IPlugin p in plugins.Keys) { if (String.Compare(workerIndent, plugins[p].WorkIndent, StringComparison.OrdinalIgnoreCase) == 0) { attr = plugins[p]; return p; } } attr = null; return null; }
public static void Init(IPlugin plugin) { app = plugin; PluginAttr = plugin.GetAttribute(); initCfg(PluginAttr); InitWeixin(PluginAttr.Settings); //提供微信支付信息 var weixinPay_PartnerId = PluginAttr.Settings["WeixinPay_PartnerId"]; var weixinPay_Key = PluginAttr.Settings["WeixinPay_Key"]; var weixinPay_AppId = PluginAttr.Settings["WeixinPay_AppId"]; var weixinPay_AppKey = PluginAttr.Settings["WeixinPay_AppKey"]; var weixinPay_TenpayNotify = PluginAttr.Settings["WeixinPay_TenpayNotify"]; var tenPayV3_MchId = PluginAttr.Settings["TenPayV3_MchId"]; var tenPayV3_Key = PluginAttr.Settings["TenPayV3_Key"]; var tenPayV3_AppId = PluginAttr.Settings["TenPayV3_AppId"]; var tenPayV3_AppSecret = PluginAttr.Settings["TenPayV3_AppSecret"]; var tenPayV3_TenpayNotify = PluginAttr.Settings["TenPayV3_TenpayNotify"]; var weixinPayInfo = new TenPayInfo(weixinPay_PartnerId, weixinPay_Key, weixinPay_AppId, weixinPay_AppKey, weixinPay_TenpayNotify); TenPayInfoCollection.Register(weixinPayInfo); var tenPayV3Info = new TenPayV3Info(tenPayV3_AppId, tenPayV3_AppSecret, tenPayV3_MchId, tenPayV3_Key, tenPayV3_TenpayNotify); TenPayV3InfoCollection.Register(tenPayV3Info); }
private static void initCfg(PluginPackAttribute attr) { //初始化配置 bool isChanged = false; if (!attr.Settings.Contains("WeixinPay_PartnerId")) { attr.Settings.Set("WeixinPay_PartnerId", ""); isChanged = true; } if (!attr.Settings.Contains("WeixinPay_Key")) { attr.Settings.Set("WeixinPay_Key", ""); isChanged = true; } if (!attr.Settings.Contains("WeixinPay_AppId")) { attr.Settings.Set("WeixinPay_AppId", ""); isChanged = true; } if (!attr.Settings.Contains("WeixinPay_AppKey")) { attr.Settings.Set("WeixinPay_AppKey", ""); isChanged = true; } if (!attr.Settings.Contains("WeixinPay_TenpayNotify")) { attr.Settings.Set("WeixinPay_TenpayNotify", ""); isChanged = true; } if (!attr.Settings.Contains("TenPayV3_MchId")) { attr.Settings.Set("TenPayV3_MchId", ""); isChanged = true; } if (!attr.Settings.Contains("TenPayV3_Key")) { attr.Settings.Set("TenPayV3_Key", ""); isChanged = true; } if (!attr.Settings.Contains("TenPayV3_AppId")) { attr.Settings.Set("TenPayV3_AppId", ""); isChanged = true; } if (!attr.Settings.Contains("TenPayV3_AppSecret")) { attr.Settings.Set("TenPayV3_AppSecret", ""); isChanged = true; } if (!attr.Settings.Contains("TenPayV3_TenpayNotify")) { attr.Settings.Set("TenPayV3_TenpayNotify", ""); isChanged = true; } if (!attr.Settings.Contains("Weixin_AppId")) { attr.Settings.Set("Weixin_AppId", "填写微信AppId"); isChanged = true; } if (!attr.Settings.Contains("Weixin_AppSecret")) { attr.Settings.Set("Weixin_AppSecret", "填写微信AppSecret"); isChanged = true; } if (!attr.Settings.Contains("Weixin_AppEncodeString")) { attr.Settings.Set("Weixin_AppEncodeString", "填写微信App解密字符串"); isChanged = true; } if (!attr.Settings.Contains("Weixin_Token")) { attr.Settings.Set("Weixin_Token", "填写微信token"); isChanged = true; } if (!attr.Settings.Contains("Weixin_ApiDomain")) { attr.Settings.Set("Weixin_ApiDomain", "填写用于对接微信的域名:如http://www.ops.cc/weixin/。"); isChanged = true; } if (!attr.Settings.Contains("Weixin_WelcomeMessage")) { attr.Settings.Set("Weixin_WelcomeMessage", "欢迎来到微信!"); isChanged = true; } if (!attr.Settings.Contains("Weixin_EnterMessage")) { attr.Settings.Set("Weixin_EnterMessage", ""); isChanged = true; } if (!attr.Settings.Contains("Weixin_MenuButtons")) { attr.Settings.Set("Weixin_MenuButtons", "填写微信自定义按钮"); isChanged = true; } if (isChanged) attr.Settings.Flush(); }