Пример #1
0
        public async Task <IActionResult> GetCommodity([FromRoute] Guid id)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var commodity = await _context.Commodities.FindAsync(id);

            if (commodity == null)
            {
                return(this.AlpsActionError("无此商品"));
                //return NotFound();
            }
            CommodityEditDto dto = new CommodityEditDto
            {
                ID                = commodity.ID,
                Name              = commodity.Name,
                Description       = commodity.Description,
                ProductSkuID      = commodity.ProductSkuID,
                AuxiliaryQuantity = commodity.PreSellAuxiliaryQuantity,
                Quantity          = commodity.PreSellQuantity,
                ListPrice         = commodity.ListPrice
            };

            return(this.AlpsActionOk(dto));
        }
Пример #2
0
        public async Task <IActionResult> PostCommodity([FromBody] CommodityEditDto dto)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            Commodity c = Commodity.Create(dto.ProductSkuID, dto.Name, dto.Description, dto.ListPrice, dto.Quantity, dto.AuxiliaryQuantity);

            _context.Commodities.Add(c);
            await _context.SaveChangesAsync();

            return(this.AlpsActionOk());
        }
Пример #3
0
        public async Task <IActionResult> PutCommodity([FromRoute] Guid id, [FromBody] CommodityEditDto commodity)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != commodity.ID)
            {
                return(BadRequest());
            }

            var existCommodity = _context.Commodities.Find(id);

            if (existCommodity == null)
            {
                return(this.AlpsActionError("此商品不存在"));
            }
            existCommodity.ProductSkuID             = commodity.ProductSkuID;
            existCommodity.ListPrice                = commodity.ListPrice;
            existCommodity.Name                     = commodity.Name;
            existCommodity.Description              = commodity.Description;
            existCommodity.PreSellQuantity          = commodity.Quantity;
            existCommodity.PreSellAuxiliaryQuantity = commodity.AuxiliaryQuantity;

            //_context.Entry(commodity).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException ex)
            {
                if (!CommodityExists(id))
                {
                    //return NotFound();
                    return(this.AlpsActionError("无此商品"));
                }
                else
                {
                    return(this.AlpsActionError(ex.Message));
                    //return this.AlpsActionError();
                    //throw;
                }
            }

            return(this.AlpsActionOk());
        }