diff --git a/B3WeChat/Rpcs/ApproveMessageRpc.cs b/B3WeChat/Rpcs/ApproveMessageRpc.cs index ff7bd0a..1a9dd76 100644 --- a/B3WeChat/Rpcs/ApproveMessageRpc.cs +++ b/B3WeChat/Rpcs/ApproveMessageRpc.cs @@ -15,6 +15,7 @@ using System.IO; using System.Linq; using System.Text; using System.Web; +using System.Web.Script.Serialization; using TSingSoft.WebPluginFramework; namespace BWP.B3WeChat.Rpcs @@ -127,6 +128,31 @@ namespace BWP.B3WeChat.Rpcs return dic; } + [Rpc] + public static string QueryApproveWithComment(string[] messageIDList) + { + if (messageIDList.Length == 0) + { + return string.Empty; + } + var query = new DQueryDom(new JoinAlias(typeof(ApproveMessage))); + query.Where.Conditions.Add(DQCondition.InList(DQExpression.Field("ID"), + messageIDList.Select((item) => DQExpression.Value(item)).ToArray())); + query.Columns.Add(DQSelectColumn.Field("ID")); + query.Columns.Add(DQSelectColumn.Field("ApproveResult")); + query.Columns.Add(DQSelectColumn.Field("ApproveComment")); + var list = query.EExecuteList, string>(); + + foreach (var messasgeID in messageIDList) + { + if (!list.Any(x => x.Item1 == messasgeID)) + { + list.Add(new Tuple, string>(messasgeID, 审批状态.已删除.Value, string.Empty)); + } + } + return new JavaScriptSerializer().Serialize(list.Select(x => new { ID = x.Item1, ApproveResult = x.Item2.Value, ApproveComment = x.Item3 })); + } + [Rpc] public static void CleanByDependOn(string dependOn,string currentBusinessNo) {