public async Task <ResponseModel <ShareAccount> > CreateCompany([FromBody] SharesAccountCreateModel model)
        {
            var result = await _sharesAccountService.CreateSharesAccount(model);

            Response.StatusCode = (int)HttpStatusCode.Created;
            return(new ResponseBuilder <ShareAccount>()
                   .Success()
                   .Data(result)
                   .build());
        }
        /// <summary>
        /// Creates the shares account.
        /// </summary>
        /// <param name="model">The model.</param>
        /// <returns></returns>
        public async Task <ShareAccount> CreateSharesAccount(SharesAccountCreateModel model)
        {
            var sharesAccount = new ShareAccount
            {
                ShareAmount   = model.ShareAmount,
                ShareholderId = model.ShareholderId,
                ShareTypeCode = model.ShareTypeCode
            };
            var result = _shareAccountRepository.Insert(sharesAccount).Entity;
            await _unitOfWork.CommitAsync();

            return(result);
        }