public async Task <IActionResult> UpdateAsync(FirmDTO firmDTO, int Id)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState.GetErrorMessage()));
            }
            else
            {
                IDataResult <Firm> firmDataResult = await _Firmservice.FindByIdAsync(Id);

                if (firmDataResult.Data == null)
                {
                    return(BadRequest(firmDataResult.Message));
                }
                _mapper = FirmMapping.GetMapper().CreateMapper();
                Firm firm = _mapper.Map <FirmDTO, Firm>(firmDTO);
                firm.ID = firmDataResult.Data.ID;
                IResult firmResult = await _Firmservice.UpdateAsync(firm);

                if (firmResult.Success)
                {
                    return(Ok(firmResult.Message));
                }
                else
                {
                    return(BadRequest(firmResult.Message));
                }
            }
        }
        public async Task <IActionResult> AddAsync(FirmDTO firmDTO)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState.GetErrorMessage()));
            }
            else
            {
                _mapper = FirmMapping.GetMapper().CreateMapper();
                //Using with Automapper mapped by Firm to FirmDTO
                Firm firm = _mapper.Map <FirmDTO, Firm>(firmDTO);
                //Firm firm = new Firm();

                //firm.FirmName = firmDTO.FirmName;
                //firm.ParentID = firmDTO.ParentID; //instead of this

                var FirmResult = await _Firmservice.AddAsync(firm);

                if (FirmResult.Success)
                {
                    return(Ok(FirmResult.Message));
                }
                else
                {
                    return(BadRequest(FirmResult.Message));
                }
            }
        }
        public IActionResult Add(FirmDTO firmDto)
        {
            _mapper = FirmMapping.GetMapper().CreateMapper();
            Firm firm = _mapper.Map <FirmDTO, Firm>(firmDto);

            var result = _Firmservice.Add(firm);

            if (result.Success)
            {
                return(Ok(result.Message));
            }

            return(BadRequest(result.Success.ToString() + "and " + result.Message));
        }