当前位置: 首页 > 知识库问答 >
问题:

java - 电商平台中,商品在编辑的时候,原skuId什么情况下会删除?

汪明德
2023-12-31

电商平台中,商品在编辑的时候,原skuId什么情况下会删除?

请教大家一个关于商品和商品sku的问题,这个问题涉及到技术层面和业务层面,如果有电商开发和开网店的同学,
请教一下经验。
我们都知道商品里面有spu和sku这两个概念,比如华为mate60 是一个商品item,有颜色(红,黑)和内存(8G,12G)这两个销售属性。
那么就会生成4个sku,同样,也会生成对应的4个skuId。

我的问题是,商品在编辑的时候,原skuId什么情况下会删除?(描述的很抽象,等我下面详细描述下)

先说下问题的背景,我这边有个需求,需要用户绑定一下skuId,但是后面用的时候,这个skuId被删除掉了,商品域的开发同学排查
了一下,是因为客户在绑定skuId之后,又编辑了商品,导致原来的skuId被删除掉了。(具体怎么删的不知道,询问了商品域的开发同学
被告知有多好几种操作的可能性导致原sku被删除掉,比如用户在前端误删了一个sku,仅仅是前端操作,还没提交后台,然后又原模原样的创建了
同样属性的sku,那么提交的话,原sku就被删除掉了,又或者新增了一些新的销售属性等等。。。)

skuId 这么重要的属性,仅仅是被用户编辑了一下,就有可能被删除掉,感觉还是挺可怕的,因为对于用户来说,他是没有这方面的考虑的,
而且对于下游依靠skuId来处理其他需求任务的服务来说,也是很重要的,比如sku参加了某个活动,就因为编辑了一下商品,这个sku就失效了。。。

然后,我就百度了一下,淘宝,京东,拼多多等大厂是如何处理的,发现好像他们也是这样搞的(不确定,只是猜测)

**下面是我的想法,实际的例子:以华为mate60 有颜色(红,黑)和内存(8G,12G)这两个销售属性 举例:编辑操作
1、如果颜色新增绿色,4个sku->6个sku ,原skuId不变,会新增2个新的sku
2、如果新增销售属性,套餐(套餐1,套餐2),4个sku->8个sku,这种情况,4个原sku会删掉,重新生成新的8个sku
3、如果用户手滑,将某个sku在前端误删(还没提交,仅仅是前端误删),然后又创建了一个一模一样属性的sku,
原sku会删掉,重新生成新的sku,因为对于后端来说,只要前端传递的对象没有携带skuId,就认为是新增的。**

貌似编辑的时候也就这三种维度的场景了,如果大家有新的场景,欢迎评论补充。

不知道上面的三个场景我的想法对不对?

这样看来,原sku失效的场景还是挺普遍的,感觉好像没有什么好的办法来解决这个问题,无论从技术还是业务上,不知道有没有在淘宝上开店的同学,你们是如何维护商品的呢?

共有1个答案

唐和洽
2023-12-31

个人感觉:

  • 场景1也不一定就不会删除,还要看后端的具体实现,有些简单的实现是每次更新,都会直接删除掉旧的,然后新增新的,用删除和新增来替代修改,不会有实际的修改的操作。其他两种是会绝对删除的。
  • 解决这个需要后台增加判定,当涉及到sku的变动时,先判定是否有还未结束的订单或有哪些正在参与的活动,只有下架后才能修改;或者是所有的订单或活动相关的单据都做冗余字段,保存当时的sku相关信息。
  • 像是京东、淘宝这些,他们都有下单时的商品快照功能,每次产品的更新都会存储一个快照,然后订单和这个快照关联,这样即便是修改了,历史的单据也不受影响。
 类似资料:
  • 1、电商平台企业列表查询 1. 接口说明: 通过接口调用形式查询电商平台企业列表 1. 接口信息: a) 请求URL https://www.sobot.com/tenantpro/open/getTenantList b) 请求方式 接口通过Http + post 的形式,通过Http作为协议,post作为传输方式 c) 请求参数 字段名 是否必选 数据类型 说明 unionCode 必选 st

  • 请问电商平台对接ERP的逻辑? 目前公司电商平台,用户购买的订单跟厂内ERP是脱钩 用户在电商平台购买 10000 个塑胶壳,数据只保存在电商数据库 ERP还是要维持手动录入客户订单动作 疑惑点 假设一个客人下单,需要在ERP对应建立一个客户主数据吗? 电商平台一张订单对应ERP建立一张订单? 假设电商平台有退货或临时折扣怎么办?

  • 问题内容: 我正在寻找可以满足以下要求的Java或.NET电子商务“平台”: 产品/服务管理 客户账户管理 购物车 结帐/商家整合 本地化(尤其是货币) 优惠券 多个店面 报告中 可能的PayPal / Google Checkout集成 这里的目标是将其与用Adobe Flex编写的RIA集成。我们很乐意编写一个薄的后端层来支持Flex应用程序,因此该解决方案不需要可远程访问的API,而只需一个

  • 乐易拍信息平台主要为企业实现电子商务提供一个快捷的解决方案.通过本方案系统,可以加快开发速度,降低开发成本.搭建高效、稳定、可拓展的系统。 本系统运用asp.net 2.0开发,数据库使用SQL2000(可以放在SQL2005上),包括前台和后台两个部分。 前台主要运用jquery+CSS 构建的展示订购平台。 后台是运用CSS+EXTJS构建的一个完整的权限管理+销售订单管理的系统。主要功能:

  • 我正在尝试从“shop_order”上下文中删除管理菜单中的“woocommerce order downloads”div。我得到了一个很好的答案来识别上下文,并能够用以下代码删除“postcustom”div。请注意,我试图通过添加一行删除“woocommerce订单下载”来实现完全相同的目的。那件东西坏了。我试过“订单下载”、“下载”等。我还去了“设置”--

  • 说明 用于对商品分类的删除操作 请求地址 http://api.dc78.cn/Api/mall_del_commodity 请求方式 GET 请求参数 GET参数 描述 commodity_id=商品编号(二选一) ext_code=商品线下编号(二选一) POST数据 描述 无 返回 { "status": 1, "info": "删除成功" } 请求方式 INI 请求参数 [action]