diff --git a/Learun.Framework.Ultimate V7/Learun.Application.IMServer/App.config b/Learun.Framework.Ultimate V7/Learun.Application.IMServer/App.config
index e07370b1f..1392c4b86 100644
--- a/Learun.Framework.Ultimate V7/Learun.Application.IMServer/App.config
+++ b/Learun.Framework.Ultimate V7/Learun.Application.IMServer/App.config
@@ -70,7 +70,7 @@
-
+
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.IMServer/Hubs/Chats.cs b/Learun.Framework.Ultimate V7/Learun.Application.IMServer/Hubs/Chats.cs
index 99c57d6b7..96f615fe0 100644
--- a/Learun.Framework.Ultimate V7/Learun.Application.IMServer/Hubs/Chats.cs
+++ b/Learun.Framework.Ultimate V7/Learun.Application.IMServer/Hubs/Chats.cs
@@ -91,6 +91,16 @@ namespace Learun.Application.IMServer
#endregion
+
+ #region 推送消息
+
+ public void PushMessage(string msg)
+ {
+ Clients.All.broadcastMessage(msg);
+ }
+
+ #endregion
+
#region 一般公用方法
///
/// 获取登录用户Id
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Learun.Application.Web.csproj b/Learun.Framework.Ultimate V7/Learun.Application.Web/Learun.Application.Web.csproj
index e717918ca..6b052f7ab 100644
--- a/Learun.Framework.Ultimate V7/Learun.Application.Web/Learun.Application.Web.csproj
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Learun.Application.Web.csproj
@@ -3833,6 +3833,7 @@
+
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Views/LR_Content/script/pushmessage.js b/Learun.Framework.Ultimate V7/Learun.Application.Web/Views/LR_Content/script/pushmessage.js
new file mode 100644
index 000000000..33471a823
--- /dev/null
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Views/LR_Content/script/pushmessage.js
@@ -0,0 +1,75 @@
+(function ($, learun) {
+ "use strict";
+
+
+ learun._im = {
+ init: function () {
+ learun._im.registerServer();
+ learun._im.connect();
+ }
+ // 连接服务端
+ , connect: function () {
+ var loginInfo = learun.clientdata.get(['userinfo']);
+ if (loginInfo.imOpen != 'true') {
+ setTimeout(learun._im.connect, 1000);
+ }
+
+ $.ajax({
+ url: loginInfo.imUrl + "/hubs",
+ type: "get",
+ dataType: "text",
+ success: function (data) {
+ eval(data);
+ //Set the hubs URL for the connection
+ $.connection.hub.url = loginInfo.imUrl;
+ $.connection.hub.qs = { "userId": loginInfo.userId };
+ // Declare a proxy to reference the hub.
+ learun.imChat = $.connection.ChatsHub;
+ learun.imChat.client.broadcastMessage = function(message) {
+ top.layer.open({
+ type: 1 //此处以iframe举例
+ , title: '通知'
+ , area: ['390px', '330px']
+ , shade: 0
+ , offset: 'rb'
+ , maxmin: true
+ , content: message
+ , btn: null
+ , yes: function () {
+ $(that).click(); //此处只是为了演示,实际使用可以剔除
+ }
+ , btn2: function () {
+ layer.closeAll();
+ }
+
+ , zIndex: layer.zIndex //重点1
+ , success: function (layero) {
+ layer.setTop(layero); //重点2
+ }
+ });
+ }
+ if (!learun.imChat) {
+ setTimeout(learun._im.connect, 1000);
+ }
+ // 连接成功后注册服务器方法
+ $.connection.hub.start().done(function () {
+ learun.imChat.server.pushMessage('123123');
+ });
+ //断开连接后
+ $.connection.hub.disconnected(function () {
+ //
+ });
+ },
+ error: function (XMLHttpRequest, textStatus, errorThrown) {
+ isLoaded = 0;
+ },
+ });
+ }
+ };
+
+
+ $(function() {
+ learun._im.connect();
+ })
+
+})(jQuery, top.learun);
\ No newline at end of file
diff --git a/Learun.Framework.Ultimate V7/Learun.Application.Web/Views/Shared/_Admin.cshtml b/Learun.Framework.Ultimate V7/Learun.Application.Web/Views/Shared/_Admin.cshtml
index 6b75f3534..a5f58eda7 100644
--- a/Learun.Framework.Ultimate V7/Learun.Application.Web/Views/Shared/_Admin.cshtml
+++ b/Learun.Framework.Ultimate V7/Learun.Application.Web/Views/Shared/_Admin.cshtml
@@ -45,10 +45,10 @@
-
+
-
+
@@ -75,12 +75,13 @@
"/Views/LR_Content/plugin/tree/lr-tree.js",
"/Views/LR_Content/plugin/select/lr-select.js",
-
+
"/Views/LR_Content/plugin/workflow/lr-workflow-api.js",
"/Views/LR_Content/plugin/contextmenu/lr-contextmenu.js",
"/Views/LR_Content/script/lr-im.js",
-
+ "/Views/LR_Content/script/pushmessage.js",
+
"/Views/LR_Content/script/lr-admin.js"
)