Example #1
0
        //public async Task<IResultModel> PageAsync(PageInput<OprationLogEntity> input)
        //{
        //    var userName = input.Filter?.CreatedUserName;

        //    var list = await _oprationLogRepository.Select
        //    .WhereIf(userName.NotNull(), a => a.CreatedUserName.Contains(userName))
        //    .Count(out var total)
        //    .OrderByDescending(true, c => c.Id)
        //    .Page(input.CurrentPage, input.PageSize)
        //    .ToListAsync<OprationLogListOutput>();

        //    var data = new PageOutput<OprationLogListOutput>()
        //    {
        //        List = list,
        //        Total = total
        //    };

        //    return ResponseOutput.Ok(data);
        //}

        public async Task <IResultModel> AddAsync(OprationLogAddInput input)
        {
            string ua     = _context.HttpContext.Request.Headers["User-Agent"];
            var    client = UAParser.Parser.GetDefault().Parse(ua);
            var    device = client.Device.Family;

            device            = device.ToLower() == "other" ? "" : device;
            input.Browser     = client.UA.Family;
            input.Os          = client.OS.Family;
            input.Device      = device;
            input.BrowserInfo = ua;
            input.NickName    = _user.NickName;
            input.IP          = IPHelper.GetIP(_context?.HttpContext?.Request);
            var entity = _mapper.Map <OprationLogEntity>(input);
            var id     = await _oprationLogRepository.InsertAsync(entity);

            return(ResultModel.Result(id > 0));
        }