using Microsoft.Extensions.Logging;
using SlnMesnac.Model.domain;
using System;
using System.Collections.Generic;
using System.Text;

namespace SlnMesnac.Repository.service.Impl
{
    public class BaseUserServiceImpl : IBaseUserService
    {
        private readonly ILogger<BaseUser> _logger;

        private readonly Repository<BaseUser> _rep;

        public BaseUserServiceImpl(ILogger<BaseUser> logger, Repository<BaseUser> rep)
        {
            _logger = logger;
            _rep = rep;
        }


        public List<BaseUser> GetUsers()
        {
            List<BaseUser> users = null;
            try
            {
                users = _rep.GetList();
            }
            catch (Exception ex)
            {
                _logger.LogError($"获取用户信息异常{ex.Message}");
            }
            return users;
        }

        public bool InsertUsers(List<BaseUser> users)
        {
            bool result = false;
            try
            {
                _rep.AsTenant().BeginTran();

                result = _rep.InsertRange(users);

                _rep.AsTenant().CommitTran();
            }
            catch (Exception ex)
            {
                _rep.AsTenant().RollbackTran();
                _logger.LogError($"用户信息添加异常:{ex.Message}");
            }
            return result;
        }
    }
}
