public async Task <Result> InsertTemplate(CommissionStatementTemplateEdit template)
        {
            var validator = new CommissionStatementTemplateValidator(true);
            var result    = validator.Validate(template).GetResult();

            if (!result.Success)
            {
                return(result);
            }

            var entity = MapModelToEntity(template);
            await _context.CommissionStatementTemplate.AddAsync(entity);

            await _context.SaveChangesAsync();

            template.Id = entity.Id;
            result.Tag  = template;

            return(result);
        }
        public async Task <Result> UpdateTemplate(CommissionStatementTemplateEdit template)
        {
            var validator = new CommissionStatementTemplateValidator(false);
            var result    = validator.Validate(template).GetResult();

            if (!result.Success)
            {
                return(result);
            }

            var entity = await _context.CommissionStatementTemplate.FirstOrDefaultAsync(b => b.Id == template.Id);

            if (entity == null)
            {
                return(new Result());
            }

            entity = MapModelToEntity(template, entity);
            await _context.SaveChangesAsync();

            return(result);
        }