//批量转移 protected void btn_Move_Click(object sender, EventArgs e) { if (Hid_GoodsClassId.Value.Equals(Guid.Empty.ToString())) { MessageBox.Show(this, "请选择商品分类!"); return; } if (Hid_GoodsClassId.Value.Equals(ddl_GoodsClass.SelectedValue)) { MessageBox.Show(this, "您所选分类和商品当前分类一致,无需移动!"); return; } if (Request["ckId"] != null) { var errorMsg = new StringBuilder(); var isMove = false; var newGoodsClassId = new Guid(ddl_GoodsClass.SelectedValue); var goodsIdsAndGoodsNamesAndGoodsAuditState = Request["ckId"].Split(','); var goodsAuditStateList = goodsIdsAndGoodsNamesAndGoodsAuditState.Select(item => item.Split('&')[2]).Where(p => !p.Equals(((int)GoodsAuditState.Pass).ToString())); if (goodsAuditStateList.Any()) { MessageBox.Show(this, "非“审核通过”状态不允许转移!"); return; } foreach (var item in goodsIdsAndGoodsNamesAndGoodsAuditState) { var goodsId = new Guid(item.Split('&')[0]); string goodsName = item.Split('&')[1]; //获取要转移的商品属性列表 var goodsfieldList = _goodsCenterSao.GetFieldDetailByGoodsId(goodsId).ToList(); //转移目标商品分类的属性列表 var goodsClassFieldList = newGoodsClassId == Guid.Empty ? new List <Guid>() : _goodsCenterSao.GetClassDetail(newGoodsClassId).GoodsClassFieldList; //如果所选商品和转移目标分类都是没有属性的则可以转移 if (goodsfieldList.Count == 0 && goodsClassFieldList.Count == 0) { isMove = true; } else { foreach (var info in goodsfieldList) { foreach (var guid in goodsClassFieldList) { isMove = info.FieldId == guid; } } } if (!isMove) { continue; } try { string failMessage; var result = _goodsCenterSao.UpdateGoodsClass(goodsId, newGoodsClassId, out failMessage); if (!result) { errorMsg.Append("“").Append(goodsName).Append("”").Append(failMessage).Append("!").Append("\\n"); } } catch { errorMsg.Append("“").Append(goodsName).Append("”转移失败!").Append("\\n"); } } if (!string.IsNullOrEmpty(errorMsg.ToString())) { MessageBox.Show(this, errorMsg.ToString()); } else { GridDataBind(); RG_Goods.DataBind(); MessageBox.AppendScript(this, "alert('商品转移成功!');moveHide();"); } } else { MessageBox.AppendScript(this, "alert('请选择要转移的商品!');moveShow();"); } }
//查询 protected void btn_Search_Click(object sender, EventArgs e) { GridDataBind(); RG_Goods.CurrentPageIndex = 0; RG_Goods.DataBind(); }