public async Task <BaseApiResponse> UpdateGoods([FromBody] UpdateGoodsRequest request) { request.CheckNotNull(nameof(request)); var command = new UpdateGoodsCommand( request.Name, request.Description, request.Pics, request.Price, request.Benevolence, request.SellOut, request.Status, request.RefusedReason) { AggregateRootId = request.Id }; var result = await ExecuteCommandAsync(command); if (!result.IsSuccess()) { return(new BaseApiResponse { Code = 400, Message = "更新商品失败:{0}".FormatWith(result.GetErrorMessage()) }); } //更新规格 var command2 = new UpdateSpecificationsCommand( request.Id, request.Specifications.Select(x => new Commands.Goodses.Specifications.SpecificationInfo( x.Id, x.Name, x.Value, x.Thumb, x.Price, x.OriginalPrice, x.Benevolence, x.Number, x.BarCode, x.Stock )).ToList(), true); var result2 = await ExecuteCommandAsync(command2); if (!result2.IsSuccess()) { return(new BaseApiResponse { Code = 400, Message = "命令没有执行成功:{0}".FormatWith(result2.GetErrorMessage()) }); } return(new BaseApiResponse()); }
public async Task <IActionResult> Update([FromBody] UpdateGoodsRequest request) { try { var response = await _serviceProvider.HandlerAsync(request); return(new JsonResult(response)); } catch (Exception ex) { return(new JsonResult(new ResponseBase() { Result = -1, ResultInfo = ex.Message })); } }
public Task <DeleteInRoomGoodsResponse> DeleteGoodsAsync(UpdateGoodsRequest request) { return(WeChatMiniProgramApiRequester.RequestAsync <DeleteInRoomGoodsResponse>(UpdateGoodsUrl, HttpMethod.Post, request)); }
/// <summary> /// 微盟-商品信息-更新商品(ec/goods/updateGoods) /// </summary> public void UpdateGoodsToWm(DateTime startDate, DateTime endDate) { string preMsg = "微盟 更新商品 "; string sql = @"select a.F_GoodsID, a.F_SkuID, a.F_CategoryID, a.F_Name, a.F_ID, a.F_Stop, z.F_PosPrice, a.F_CostPrice, b.F_Qty from v_Item_NoPic a left join (select F_ItemZID,F_PosPrice from t_ItemZonePriceOne where F_ZoneID = '01') z on a.F_ID = z.F_ItemZID left join t_StorageQty b on a.F_ID = b.F_ItemID and a.F_ColorID = b.F_ColorID and a.F_SizeID = b.F_SizeID where a.F_UpdateTime >= '" + startDate.ToString("yyyy-MM-dd HH:mm:ss") + @"' and a.F_UpdateTime < '" + endDate.ToString("yyyy-MM-dd HH:mm:ss") + @"' and a.F_GoodsID is not null "; DataTable dtItem = sd.GetDataTable(sql); Log.WriteLog(preMsg + "取得的记录数:" + dtItem.Rows.Count + "行。", 1); if (dtItem.Rows.Count == 0) { return; } foreach (DataRow drItem in dtItem.Rows) { QueryGoodsDetailRequest queryReq = new QueryGoodsDetailRequest(); queryReq.goodsId = NumUtil.ToLong(drItem["F_GoodsID"]); QueryGoodsDetailResponse queryRsp = HttpPostToWm <QueryGoodsDetailResponse>("ec/goods/queryGoodsDetail", queryReq, preMsg); UpdateGoodsRequest request = new UpdateGoodsRequest(); PendingUpdateGoodsVo goods = new PendingUpdateGoodsVo(); goods.goodsId = NumUtil.GetVal_Long(drItem["F_GoodsID"]); goods.title = drItem["F_Name"].ToString(); goods.isMultiSku = 0; goods.goodsImageUrl = queryRsp.data.goods.goodsImageUrl; //goods.goodsDesc = ""; goods.initialSales = 0; goods.deductStockType = 1; goods.isPutAway = NumUtil.ToInt(drItem["F_Stop"]); goods.Sort = 0; goods.categoryId = NumUtil.ToLong(drItem["F_CategoryID"]); goods.b2cGoods = new PendingB2CGoodsVo { freightTemplateId = NumUtil.ToLong(G_INI.ReadValue("Local", "freightTemplateId")), deliveryTypeIdList = new List <long> { NumUtil.ToLong(G_INI.ReadValue("Local", "deliveryTypeId")) }, b2cGoodsType = 0 }; goods.skuList = new List <PendingSkuVo> { new PendingSkuVo { skuId = NumUtil.ToLong(drItem["F_SkuID"]), outerSkuCode = drItem["F_ID"].ToString(), salePrice = NumUtil.ToDecimal(drItem["F_CostPrice"]), costPrice = NumUtil.ToInt(drItem["F_Qty"]), editStockNum = 0, b2cSku = new PendingB2CSkuVo { weight = 0, volume = 0 } } }; request.goods = goods; UpdateGoodsResponse response = HttpPostToWm <UpdateGoodsResponse>("ec/goods/updateGoods", request, preMsg); } }
public async Task <BaseApiResponse> UpdateGoods(UpdateGoodsRequest request) { request.CheckNotNull(nameof(request)); var goods = _goodsQueryService.GetGoodsAlias(request.Id); if (goods == null) { return(new BaseApiResponse { Code = 400, Message = "未找到该商品" }); } var command = new UpdateGoodsCommand( request.Name, request.Description, request.Pics, request.Price, request.Benevolence, request.SellOut, request.Status, request.RefusedReason) { AggregateRootId = request.Id }; var result = await ExecuteCommandAsync(command); if (!result.IsSuccess()) { return(new BaseApiResponse { Code = 400, Message = "更新商品失败:{0}".FormatWith(result.GetErrorMessage()) }); } //更新规格 var command2 = new UpdateSpecificationsCommand( request.Id, request.Specifications.Select(x => new Commands.Goodses.Specifications.SpecificationInfo( x.Id, x.Name, x.Value, x.Thumb, x.Price, x.OriginalPrice, x.Benevolence, x.Number, x.BarCode, x.Stock )).ToList(), true); var result2 = await ExecuteCommandAsync(command2); if (!result2.IsSuccess()) { return(new BaseApiResponse { Code = 400, Message = "命令没有执行成功:{0}".FormatWith(result2.GetErrorMessage()) }); } //添加操作记录 var currentAdmin = _contextService.GetCurrentAdmin(HttpContext.Current); RecordOperat(currentAdmin.AdminId.ToGuid(), "审核商品", request.Id, goods.Name); return(new BaseApiResponse()); }