private ResponseView ChangeCannotQty(ChangeCannotQtyRequest request) { try { request.ThrowExceptionIfInvalid(); } catch (ServiceInvalidException ex) { return(base.OutPutErrorResponseView(ex.Message)); } var kvs = request.GetDic(); var skus = _skuRepository.GetList(x => request.Ids.Contains(x.Id), "Stock").ToList(); foreach (var item in skus) { var subItem = kvs[item.Id]; item.ChangeCannotQty(subItem.qty); if (item.IsBroker()) { var result = base.OutPutErrorResponseView(item.GetBrokenRuleMessage()); return(result); } } _skuRepository.Commit(); return(base.OutPutSuccessResponseView()); }
public void CreateOrderChangeCannotQty(RabbitRequest request) { var correlationId = request.GetCorrelationId(); //判断是否重复推送 if (_cacheService.ChangeQtyNumberExsist(correlationId)) { return; } ChangeCannotQtyRequest requestBody = new ChangeCannotQtyRequest(); requestBody.items = request.PaseBody <IList <ChangeCannotQtyItemRequest> >(); var response = ChangeCannotQty(requestBody); _cacheService.NotifyChangeQtyNumber(request.Header, response.issuccess, response.message, response.errcode); }