public async Task <IActionResult> GetContractById(string id)
        {
            int ID     = Convert.ToInt32(id);
            var entity = await ContractDto.ToEntity(ID, _context);

            if (entity == null)
            {
                return(NotFound());
            }

            return(Ok(entity));
        }
        public async Task <IActionResult> Delete(int id)
        {
            var entity = await ContractDto.ToEntity(id, _context);

            if (entity == null)
            {
                return(NotFound());
            }
            _context.Contracts.Remove(entity);
            await _context.SaveChangesAsync();

            return(NoContent());
        }
        public async Task <IActionResult> Put(ContractDto contractDto)
        {
            var entity = await ContractDto.ToEntity(contractDto, _context);

            if (entity == null)
            {
                return(NotFound());
            }

            _context.Entry(entity).State = EntityState.Modified;
            await _context.SaveChangesAsync();

            return(CreatedAtAction("Get", new { }, contractDto));
        }
        public async Task <ActionResult <ContractDto> > Post(ContractDto dto)
        {
            var entity = await ContractDto.ToEntity(dto, _context);

            if (entity == null)
            {
                return(NotFound());
            }

            await _context.Contracts.AddAsync(entity);

            await _context.SaveChangesAsync();

            var contractDto = ContractDto.FromEntity(entity);

            return(CreatedAtAction("Get", new { }, contractDto));
        }