更新用户通讯录

2020-09-30 01:03发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


在hybris 5.7 b2c中,我正在尝试更新用户通讯录(在"我的帐户"中)。 这是代码:

最终用户模型um = defaultUserService.getUserForUID(orderModel.getUserId()); 最终集合addresscollection = um.getAddresses();

 如果(addresscollection!= null && addresscollection.size()> 0)
          {
              最后的AddressModel [] arr = addresscollection.toArray(new AddressModel [addresscollection.size()]);
              如果(shippingAddress.getAddressSequence()> = 0)
              {
                  最后的AddressModel addressModel = arr [shippingAddress.getAddressSequence()];
                  globaleCustomerDetailsAddressConverter.populate(shippingAddress,addressModel);
                  最终的字符串代码= addressModel.getCountry()。getIsocode();
                  最后的ArrayList 列表= new ArrayList ();
                  list.addAll(Arrays.asList(arr));
                  um.setAddresses(list);
                  modelService.save(um);
              }
              其他
              {
                 //添加到地址集合
              }
          }

  

运行时一切正常,我在设置为um(userModel)的列表中看到了更新的代码,但是当我检查用户通讯录时,我看不到更改

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


在hybris 5.7 b2c中,我正在尝试更新用户通讯录(在"我的帐户"中)。 这是代码:

最终用户模型um = defaultUserService.getUserForUID(orderModel.getUserId()); 最终集合addresscollection = um.getAddresses();

 如果(addresscollection!= null && addresscollection.size()> 0)
          {
              最后的AddressModel [] arr = addresscollection.toArray(new AddressModel [addresscollection.size()]);
              如果(shippingAddress.getAddressSequence()> = 0)
              {
                  最后的AddressModel addressModel = arr [shippingAddress.getAddressSequence()];
                  globaleCustomerDetailsAddressConverter.populate(shippingAddress,addressModel);
                  最终的字符串代码= addressModel.getCountry()。getIsocode();
                  最后的ArrayList 列表= new ArrayList ();
                  list.addAll(Arrays.asList(arr));
                  um.setAddresses(list);
                  modelService.save(um);
              }
              其他
              {
                 //添加到地址集合
              }
          }

  

运行时一切正常,我在设置为um(userModel)的列表中看到了更新的代码,但是当我检查用户通讯录时,我看不到更改

付费偷看设置
发送
4条回答
SAP砖家
1楼-- · 2020-09-30 01:41

您似乎正在保存新地址,而不是真正在更新现有地址。 我无法从这里的代码中找出您如何更新现有地址。 通常,您将必须按PK检索地址,设置新值并保存(并可能刷新)。

梦想连接
2楼-- · 2020-09-30 01:27

您在hmc/backoffice中看到针对该用户的地址吗?

愤怒的猪头君
3楼-- · 2020-09-30 01:41

是的,我在hmc中看到了地址,我的意思是我在"地址"菜单项中看到了该地址。 如果我在hmc中转到该客户地址-我看到的与我的帐户中的地址相同-我看不到更新的地址

huskylover
4楼-- · 2020-09-30 01:36

您不是要更新一个地址吗? ? 如果是这样,那么您必须起诉save(),而不是saveAll()

一周热门 更多>