using AutoMapper;
using GxPress.Repository.Interface;
using GxPress.Repository.Interface.WorkProcess;
using GxPress.Service.Interface;

namespace GxPress.Service.Implement
{
    public partial class ProcessService : IProcessService
    {
        private readonly IProcessRepository _processRepository;
        private readonly IProcessGroupRepository _processGroupRepository;
        private readonly IProcessFieldRepository _processFieldRepository;
        private readonly IProcessNodeRepository _processNodeRepository;
        private readonly IProcessRequestLimitRepository _processRequestLimitRepository;
        private readonly IRuleCarbonCopyRepository _ruleCarbonCopyRepository;
        private readonly IRuleApproverCheckRepository _ruleApproverCheckRepository;
        private readonly IRuleConditionRepository _ruleConditionRepository;
        private readonly IDepartmentRepository _departmentRepository;
        private readonly IRoleRepository _roleRepository;
        private readonly IUserRepository _userRepository;
        private readonly IMapper _mapper;
       

        public ProcessService(IMapper mapper, IProcessRepository processRepository, IProcessGroupRepository processGroupRepository, IProcessFieldRepository processFieldRepository, IProcessNodeRepository processNodeRepository, IProcessRequestLimitRepository processRequestLimitRepository, IRuleCarbonCopyRepository ruleCarbonCopyRepository, IRuleApproverCheckRepository ruleApproverCheckRepository, IRuleConditionRepository ruleConditionRepository, IDepartmentRepository departmentRepository, IRoleRepository roleRepository, IUserRepository userRepository)
        {
            _mapper = mapper;
            _processRepository = processRepository;
            _processGroupRepository = processGroupRepository;
            _processFieldRepository = processFieldRepository;
            _processNodeRepository = processNodeRepository;
            _processRequestLimitRepository = processRequestLimitRepository;
            _ruleCarbonCopyRepository = ruleCarbonCopyRepository;
            _ruleApproverCheckRepository = ruleApproverCheckRepository;
            _ruleConditionRepository = ruleConditionRepository;
            _departmentRepository = departmentRepository;
            _roleRepository = roleRepository;
            _userRepository = userRepository;
        }
    }
}