示例#1
0
        public async Task <ResultDto> UpdateAsync(GoodsInDto d)
        {
            ResultDto r = ValidInput(d);

            if (!r.IsSuccess)
            {
                return(r);
            }
            if (d.Id == null)
            {
                r.AddError(nameof(d.Id), "输入Id为空");
                return(r);
            }

            Guid  id = d.Id.Value;
            Goods m  = await _context.Goods.FindAsync(id);

            if (m == null)
            {
                r.AddError("Goods", "没有对应的数据");
                return(r);
            }
            _mapper.Map(d, m);
            await _context.SaveChangesAsync();

            return(r);
        }
示例#2
0
        private ResultDto ValidInput(GoodsInDto d)
        {
            ResultDto r = new ResultDto();

            if (d == null)
            {
                r.AddError("Input", "输入数据为空");
                return(r);
            }
            if (d.Pricing == PricingWay.Time)
            {
                if (d.Days == null)
                {
                    r.AddError(nameof(d.Days), "不能为空");
                    return(r);
                }
                if (d.Days.Value <= 0)
                {
                    r.AddError(nameof(d.Days), "必须大于0");
                    return(r);
                }
            }
            if (d.Pricing == PricingWay.Words && d.Words == null)
            {
                r.AddError(nameof(d.Words), "非法数字");
                return(r);
            }
            return(r);
        }
示例#3
0
        public async Task <DataResultDto <Guid?> > AddAsync(GoodsInDto d)
        {
            DataResultDto <Guid?> rd = new DataResultDto <Guid?>();
            ResultDto             vr = ValidInput(d);

            if (!vr.IsSuccess)
            {
                rd.Merge(vr);
                return(rd);
            }
            Goods m = new Goods
            {
                Id         = Guid.NewGuid(),
                CreateTime = DateTimeOffset.UtcNow,
            };

            _mapper.Map(m, d);
            await _context.Goods.AddAsync(m);

            await _context.SaveChangesAsync();

            rd.Data = m.Id;
            return(rd);
        }