From 84bfbbb067be57b8c05f174b6cb705f6fc12db5c Mon Sep 17 00:00:00 2001 From: cyf Date: Fri, 20 Mar 2026 01:40:38 +0000 Subject: [PATCH] SVN r1145 SVN-Revision: r1145 --- 插件库/Lskj.Util/ReplaceHelper.cs | 51 ++++++++++++++++++++++++++++++- 1 file changed, 50 insertions(+), 1 deletion(-) diff --git a/插件库/Lskj.Util/ReplaceHelper.cs b/插件库/Lskj.Util/ReplaceHelper.cs index 1c7a912..50c1957 100644 --- a/插件库/Lskj.Util/ReplaceHelper.cs +++ b/插件库/Lskj.Util/ReplaceHelper.cs @@ -802,4 +802,53 @@ namespace Lskj.Util /// 客户标识 /// 私钥 /// System.String. - public static string ReplaceIPersonnel(string defaultValue, string iPersonnelAllowInformation, stri \ No newline at end of file + public static string ReplaceIPersonnel(string defaultValue, string iPersonnelAllowInformation, string iPersonnelCustomerId, string iPersonnelPrivateKey) + { + if (defaultValue.Contains(_iPersonnelAllowInformation) || defaultValue.Contains(_iPersonnelEncryptedMessage)) + { + //替换许可 + defaultValue = defaultValue.Replace(_iPersonnelAllowInformation, iPersonnelAllowInformation); + //替换加密的签名信息 + TimeSpan ts = DateTime.Now.ToUniversalTime() - new DateTime(1970, 1, 1); + long time = (long)ts.TotalMilliseconds;//当前时间的时间戳 + string EncryptedMessage = string.Format("company_id={0}&mobile_no={1}×tamp={2}", iPersonnelCustomerId, ERPInfo.Instance.UserLinkPhone, time); + string value = Lskj.Util.EncryptByPrivateKey.encryptByPrivateKey(EncryptedMessage, iPersonnelPrivateKey); + defaultValue = defaultValue.Replace(_iPersonnelEncryptedMessage, value); + + } + return defaultValue; + } + + + + /// + /// 替换多行参数 + /// [!xxx] 替换为 'xxx','xxx' + /// [@xxx] 替换为 'xxx,xxx' + /// + /// 行 + /// 替换值 + /// + public static string ReplaceMultipleLinesParam(DataRow[] rows, string param) + { + if (rows == null || rows.Length == 0) return param; + + param = ReplaceUserInfo(param); + string fieldValues = string.Empty; + + //获取所有[xxx]值,只处理[!xxx]和[@xxx]的值 + List fields = new List(); + Regex regex = new Regex(@"\[([^\]]+)\]"); + MatchCollection mcs = regex.Matches(param); + foreach (Match item in mcs) + { + if (fields.IndexOf(item.Value) == -1) + fields.Add(item.Value); + } + + string start = string.Empty; + string end = string.Empty; + + foreach (string field in fields) + { + \ No newline at end of file