/// <summary>
        /// 编辑DgCategory
        /// </summary>

        protected virtual async Task Update(DgCategoryEditDto input)
        {
            //TODO:更新前的逻辑判断,是否允许更新

            var entity = await _entityRepository.GetAsync(input.Id.Value);

            input.MapTo(entity);

            // ObjectMapper.Map(input, entity);
            await _entityRepository.UpdateAsync(entity);
        }
        /// <summary>
        /// 新增DgCategory
        /// </summary>

        protected virtual async Task <DgCategoryEditDto> Create(DgCategoryEditDto input)
        {
            //TODO:新增前的逻辑判断,是否允许新增

            // var entity = ObjectMapper.Map <DgCategory>(input);
            var entity = input.MapTo <DgCategory>();


            entity = await _entityRepository.InsertAsync(entity);

            return(entity.MapTo <DgCategoryEditDto>());
        }
        /// <summary>
        /// /InsertOrUpdateAndGetId
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public long CreateMissionQ(DgCategoryEditDto input)
        {
            var task = AutoMapper.Mapper.Map <DgCategory>(input);

            if (task != null)
            {
                long result = _entityRepository.InsertOrUpdateAndGetId(task);
                return(result);
            }
            else
            {
                return(0);
            }
        }
        /// <summary>
        /// 获取编辑 DgCategory
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>

        public async Task <GetDgCategoryForEditOutput> GetForEdit(NullableIdDto <long> input)
        {
            var output = new GetDgCategoryForEditOutput();
            DgCategoryEditDto editDto;

            if (input.Id.HasValue)
            {
                var entity = await _entityRepository.GetAsync(input.Id.Value);

                editDto = entity.MapTo <DgCategoryEditDto>();

                //dgCategoryEditDto = ObjectMapper.Map<List<dgCategoryEditDto>>(entity);
            }
            else
            {
                editDto = new DgCategoryEditDto();
            }

            output.DgCategory = editDto;
            return(output);
        }