From 770c681572301c938d7b9adcc60d9aad9d1dd604 Mon Sep 17 00:00:00 2001
From: yl <ykxkd@outlook.com>
Date: 星期二, 19 九月 2023 17:37:03 +0800
Subject: [PATCH] 1.新增基本资料功能接口(erp车间/部门、erp仓库、erp用户信息) 2.报工接口添加字段入库条码 3.增加末道工序报工后提交入库接口(对接erp) 4.增加生成系统条码接口(自定义)
---
VueWebApi/Hubs/ChatHub.cs | 73 +++++++++++++++++++++++++++++++-----
1 files changed, 63 insertions(+), 10 deletions(-)
diff --git a/VueWebApi/Hubs/ChatHub.cs b/VueWebApi/Hubs/ChatHub.cs
index f095823..759cd8e 100644
--- a/VueWebApi/Hubs/ChatHub.cs
+++ b/VueWebApi/Hubs/ChatHub.cs
@@ -1,8 +1,12 @@
-锘縰sing Microsoft.AspNet.SignalR;
+锘縰sing Dapper;
+using Microsoft.AspNet.SignalR;
using System;
using System.Collections.Generic;
+using System.Data;
using System.Linq;
using System.Web;
+using VueWebApi.Models;
+using VueWebApi.Tools;
namespace VueWebApi.Hubs
{
@@ -13,14 +17,10 @@
/// </summary>
private IList<string> userList = UserInfo.userList;
-
-
/// <summary>
/// 鐢ㄦ埛鐨刢onnectionID涓庣敤鎴峰悕瀵圭収琛�
/// </summary>
private readonly static Dictionary<string, string> _connections = new Dictionary<string, string>();
-
-
/// <summary>
/// 鍙戦�佸嚱鏁帮紝鍓嶇瑙﹀彂璇ュ嚱鏁扮粰鏈嶅姟鍣紝鏈嶅姟鍣ㄥ湪灏嗘秷鎭彂閫佺粰鍓嶇锛岋紙Clients.All.(鍑芥暟鍚�)鏄叏浣撳箍鎾紝鍙﹀Clients鎻愪緵浜嗙粍鎾紝骞挎挱鎺掗櫎锛岀粍鎾帓闄わ紝鎸囧畾鐢ㄦ埛鎾彂绛夌瓑锛�
@@ -31,22 +31,45 @@
/// <param name="cont">娑堟伅鍐呭</param>
public void SendByGroup(string name1, string name2, string cont)
{
+ LogHelper.WriteLogData("鐧诲綍浜哄憳:" + name1 + "鍙戦�佷汉:" + name2 + "鍙戦�佸唴瀹�:" + cont);
//Client鍐呬负鐢ㄦ埛鐨刬d锛屾槸鍞竴鐨勶紝SendMessage鍑芥暟鏄墠绔嚱鏁帮紝鎰忔�濇槸鏈嶅姟鍣ㄥ皢璇ユ秷鎭帹閫佽嚦鍓嶇
+ //Clients.Client(_connections[name2]).SendMessage("鏉ヨ嚜鐢ㄦ埛:" + name1 + " 鍐呭锛�" + cont + "" + DateTime.Now.ToString("yyyy/MM/ddhh:mm:ss") + "鐨勬秷鎭帹閫侊紒");
Clients.Client(_connections[name2]).SendMessage("鏉ヨ嚜鐢ㄦ埛:" + name1 + " 鍐呭锛�" + cont + "" + DateTime.Now.ToString("yyyy/MM/ddhh:mm:ss") + "鐨勬秷鎭帹閫侊紒");
}
-
- public void SendByGroups(string name1, IList<string>name2, string cont)
+ public void SendByGroups(string name1, DataTable name2, string cont)
{
- //Client鍐呬负鐢ㄦ埛鐨刬d锛屾槸鍞竴鐨勶紝SendMessage鍑芥暟鏄墠绔嚱鏁帮紝鎰忔�濇槸鏈嶅姟鍣ㄥ皢璇ユ秷鎭帹閫佽嚦鍓嶇
- Clients.Clients(name2).SendMessage("鏉ヨ嚜鐢ㄦ埛:" + name1 + " 鍐呭锛�" + cont + "" + DateTime.Now.ToString("yyyy/MM/ddhh:mm:ss") + "鐨勬秷鎭帹閫侊紒");
+ var departmentIDs = name2.AsEnumerable().ToList().Select(x => x.Field<string>("name")).ToList();
+ var FindPublicBaseDic = _connections.Where(d => departmentIDs.Contains(d.Key)).Select(x => x.Value).ToList();
+ Clients.Clients(FindPublicBaseDic).SendMessage("鏉ヨ嚜鐢ㄦ埛:" + name1 + " 鍐呭锛�" + cont + "" + DateTime.Now.ToString("yyyy/MM/ddhh:mm:ss") + "鐨勬秷鎭帹閫侊紒");
}
/// <summary>
- /// 鐢ㄦ埛涓婄嚎鍑芥暟
+ /// 瀹夌伅鍛煎彨鎻愪氦鏃惰皟鐢�
+ /// </summary>
+ /// <param name="username">鍙戣捣浜�</param>
+ /// <param name="wkshpcode">杞﹂棿缂栫爜</param>
+ /// <param name="eqpcode">璁惧缂栫爜</param>
+ /// <param name="json"></param>
+ public void SendByGroupList(string username,string wkshpcode, string eqpcode, List<AnDnDate> json)
+ {
+ for (int i = 0; i < json.Count; i++)
+ {
+ string cont = wkshpcode + "瀵瑰簲璁惧" + eqpcode + json[i].name.ToString();
+ var departmentIDs = json[i].children.ToList().Select(x => x.username).ToList();//鑾峰彇鎺ㄩ�佷汉鍛�
+ var FindPublicBaseDic = _connections.Where(d => departmentIDs.Contains(d.Key)).Select(x => x.Value).ToList(); //鍖归厤宸茬粡鐧诲綍鐨勬帹閫佷汉鍛樺敮涓�鐮�
+ var FindPublicBaseDicName = _connections.Where(d => FindPublicBaseDic.Contains(d.Value)).Select(x => x.Key).ToList(); //鏍规嵁鍞竴鐮佸尮閰嶅凡缁忕櫥褰曠殑鎺ㄩ�佷汉鍛樺悕绉�
+ Clients.Clients(FindPublicBaseDic).SendMessage("鏉ヨ嚜鐢ㄦ埛:" + username +" 鍐呭锛�" + cont + "鏃堕棿" + DateTime.Now.ToString("yyyy/MM/ddhh:mm:ss") + "鐨勬秷鎭�氱煡锛�");
+ }
+ }
+
+
+ /// <summary>
+ /// 鐢ㄦ埛涓婄嚎鍑芥暟(鍗曠敤鎴�)
/// </summary>
/// <param name="name">鐢ㄦ埛鍚�</param>
public void SendLogin(string name)
{
+ //LogHelper.WriteLogData("鐧诲綍浜哄憳:" + name);
if (!userList.Contains(name))
{
userList.Add(name);
@@ -61,6 +84,36 @@
//鏂扮敤鎴蜂笂绾匡紝鏈嶅姟鍣ㄥ箍鎾鐢ㄦ埛鍚�
Clients.All.loginUser(userList);
}
+ /// <summary>
+ /// 鐢ㄦ埛涓婄嚎鍑芥暟(澶氱敤鎴�)
+ /// </summary>
+ /// <param name="code">鐢ㄦ埛鍚嶉泦鍚�</param>
+ public void SendLogins(string code)
+ {
+ string[] selects = Array.ConvertAll<string, string>(code.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries), s => s.ToString()); //string鍒嗗壊杞瑂tring[]
+ //鏌ユ壘绯荤粺鐢ㄦ埛
+ var sql = @"select usercode as code,username as name
+ from TUser
+ where is_delete='0' and enable='Y' and usercode in @usercode";
+ var data = DapperHelper.selectlist(sql, new { shopcode = selects.ToArray() });
+ for (int i = 0; i < data.Rows.Count; i++)
+ {
+
+ if (!userList.Contains(data.Rows[i]["name"].ToString()))
+ {
+ userList.Add(data.Rows[i]["name"].ToString());
+ //杩欓噷渚挎槸灏嗙敤鎴穒d鍜屽鍚嶈仈绯昏捣鏉�
+ _connections.Add(data.Rows[i]["name"].ToString(), Context.ConnectionId);
+ }
+ else
+ {
+ //姣忔鐧婚檰id浼氬彂鐢熷彉鍖�
+ _connections[data.Rows[i]["name"].ToString()] = Context.ConnectionId;
+ }
+ }
+ //鏂扮敤鎴蜂笂绾匡紝鏈嶅姟鍣ㄥ箍鎾鐢ㄦ埛鍚�
+ Clients.All.loginUser(userList);
+ }
}
public class UserInfo
{
--
Gitblit v1.9.3