Beispiel #1
0
        private static void LogOperateOne(dynamic user, Enum business, string operateType, string id, object content = null, string update = null, string title = null)
        {
            var    time   = DateTime.Now;
            string filter = null;

            if (operateType != BusinessOperateType.InsertOne)
            {
                filter = $"{{_id:\"{id}\"}}";
                if (ObjectId.TryParse(id, out _))
                {
                    filter += $" | {{ _id: ObjectId('{id}')}}";
                }
            }
            var log = new BusinessLog
            {
                App         = App,
                Business    = business.ToString(),
                Title       = title,
                OperateType = operateType,
                Operator    = new() { Rid = user.Rid, Name = user.Name, Time = time },
                Key         = id,
                Filter      = filter,
                Update      = update,
                EffectCount = 1,
                Content     = content?.ToJson(),
                Text        = $"[{user.Name}:{user.Rid}] [{time:yyyy-MM-dd}] [{operateType}] [_id:{id}] [{App.Name}]"
            };

            Coll.InsertOne(log);
        }
Beispiel #2
0
        public static void LogDeleteMany(dynamic user, Enum business, string filter, long effectCount, string content = null, string title = null)
        {
            var time = DateTime.Now;
            var log  = new BusinessLog
            {
                App         = App,
                Business    = business.ToString(),
                Title       = title,
                OperateType = BusinessOperateType.DeleteMany,
                Operator    = new() { Rid = user.Rid, Name = user.Name, Time = time },
                Filter      = filter,
                EffectCount = effectCount,
                Content     = content?.ToJson(),
                Text        = $"[{user.Name}:{user.Rid}] [{time:yyyy-MM-dd}] [{BusinessOperateType.DeleteMany}] [{App.Name}]"
            };

            Coll.InsertOne(log);
        }
Beispiel #3
0
        public static void LogImport(dynamic user, Enum business, string[] ids, string content = null, string title = null)
        {
            var time = DateTime.Now;

            if (ids is null)
            {
                ids = Array.Empty <string>();
            }
            var log = new BusinessLog
            {
                App         = App,
                Business    = business.ToString(),
                Title       = title,
                OperateType = BusinessOperateType.Import,
                Operator    = new() { Rid = user.Rid, Name = user.Name, Time = time },
                Key         = $"[{string.Join(",", ids)}]",
                EffectCount = ids.Length,
                Content     = content?.ToJson(),
                Text        = $"[{user.Name}:{user.Rid}] [{time:yyyy-MM-dd}] [{BusinessOperateType.Import}] [{App.Name}]"
            };

            Coll.InsertOne(log);
        }