走秀网OpenXiu2.0的购物袋实现分享

本文详细介绍了基于IBMWCS7.0开发的OpenXiu2.0电子商务网站,融合了先进的技术,提供多渠道、统一管理的商品和订单服务。着重介绍了购物袋设计与实现方案,包括初始化逻辑、数据输入事件和实现逻辑,以及用户体验与交互设计等方面。同时,阐述了购物袋的技术实现要点,如持久化存储、特殊商品处理等。

OpenXiu2.0整体介绍

\

OpenXiu2.0是走秀网基于IBM WCS 7.0开发的全新电子商务网站,其融合了当今EC行业的许多优秀的技术,同时扩展了很多电商网站所不具备的功能,OpenXiu2.0是一个支持多渠道、统一商品管理、统一订单管理、面向用户开发的网购平台。正因为如此,OpenXiu2.0购物袋从设计到开发就考虑到了必须融合WCS7.0的最新技术和思想。

\

走秀开放平台--OpenXiu2.0采用分布式服务,即互联网SOA架构进行设计。

\

主要实现走秀系统与大量传统的、生产类的企业做信息流,数据流业务流的互通,信息可以及时得到共享,从而让走秀能够更好的利用一切资源,服务于我们的最终客户,供应商可以从走秀获得销售量、品牌的提升,更好的促成双赢。

\

主要功能介绍:

\
  • 整个系统架构分第三方系统、基础平台、业务平台、服务平台等4层。\
  • 第三方系统主要是向走秀提供商品、库存、图片等数据。\
  • 基础平台负责与第三方系统进行互连,完成接入管理等功能。\
  • 业务平台负责基础权限管理、连接调度管理,事务管理,驱动服务平台提供服务、配置管理等功能。\
  • 服务平台负责商品、库存、图片等信息的发放,走秀网供应链Oracle EBS、商品中心、传统行业、第三方平台系统,可以通过调用REST风格的API,开放标准OAUTH2.0,根据需要开发自己的应用程序。\

我们在这里先拿购物袋逻辑的设计和实现做一个方案分享。购物流程总体设计原则是简化用户操作,使用清晰简洁页面元素,并通过色彩反差对比突出操作重点,达到Don't make me think 的设计理念,使用户不需要熟悉网购,仅凭下意识就能够完成整个购物流程的体验。

\

购物袋-业务逻辑

\

1. 初始化逻辑

\
  • 加入购物袋从渠道中心检查商品可用库存,商品库存可用则进入限购检查、否则提示用户\"抱歉,此商品已售完,请到货通知我\"。点击到货通知弹出层,提示用户输入邮件地址(必填)、手机号码,提供加入收藏夹功能,提交按钮。\
  • 限购查询:从商品中心获得商品限购数量、从订单中心活动用户已购买该商品数量,计算当前用户可购买数量。(用户登入情况下检查、若用户未登入则以商品中心限购数量作为前台用户可购数量)。\
  • 商品活动查询:从活动中心取得商品参与活动情况,若参与活动则以活动价格为准,不参与其他促销计算,否则就进入促销检查。(此功能或有其他系统实现,具体待定)\
  • 促销检查:从促销中心获得商品促销列表和订单实际金额。\
  • 分期付款流程:只能加入一个商品、不参加活动和促销、分期付款商品不在购物袋显示。每次点击分期付款后替换上次分期付款的商品。分期付款作为一个独立订单存在。\
  • 秒杀流程:点击秒杀进入购物袋类型二页面、填写购物信息。秒杀只能加入一个商品、不参加促销。秒杀作为一个独立订单存在,不在购物袋显示。\
  • 名品特卖流程:作为活动处理走普通购物流程、不参与促销。\
  • 预售作为普通流程处理、参加促销,可与普通商品混在一个订单中。\
  • 同一个SKU提示重复加入购物袋、但能加入购物袋,在相同SKU上加数量。\
  • 购物袋最多购买50个SKU,到50个提示购物袋已满(若未登入状态下与登入状态后合拼的数量超过50、则去查未登入状态下最先加入的SKU)。\
  • 未登入状态下加入购物袋的商品,待登入后记录到登入用户上。(修改Commandcontext ,用户不登入能看到购物袋信息,未登入的购物袋信息2周清除,并且可配置)\
  • 判断代下订单,设置代下订单类型,从cookies中读取客服人员ID记录到orders表中\

2. 数据输入事件

\

前端用户点击放入购物袋按钮,触发加入购物袋功能,传入商品SKU、购买数量、购物袋类型。

\
  • 商品SKU\

    通过前端用户选择的商品定义属性(如颜色、尺码)锁定商品SKU。

    \ \
  • 购买数量\

    通过前端用户输入购买数量传入。

    \ \
  • 购物袋类型\

    此参数是通过用户所在不同流程判断所得、不同的业务流程所展示的页面不同

    \

    流程一:普通购物流程

    \

    流程二:分期付款购物流程

    \

    秒杀

    \

    预售

    \

    活动(名品特卖)

    \ \

3. 放入购物袋的实现逻辑

\

7652b1d13cf57fa69a9938e94b603052.jpg

\

购物袋-用户体验与交互设计

\
  • 以用户为中心的理念:\

    牢牢把握以用户为中心的设计理念,其实就是在设计和开发的每一个环节都以最终用户的利益诉求为出发点考虑问题。

    \ \
  • 用户体验的把握:\

    用户体验的本质是产品如何与外界发生联系并发挥作用,也就是人们如何接触和使用产品;电商购物流程是典型的\"以任务为导向\"的系统功能,OpenXiu2.0的设计和开发遵循Don't make me think 的思想,使用户不需要学习和熟悉网购,仅凭下意识就能够完成整个购物流程的体验。尽管每个用户对于美感都有不同见解,但是这并不意味着用户体验就没有依据或规律可循。

    \ \
  • 简单法则的运用:\

    用户很忙,我们的设计目标是简化用户购物过程中的操作环节,避免用户在使用过程中感到困惑,或遇到挫折。任何在用户体验上所作的努力,目的都是为了帮助使用者提高效率,节省时间。

    \

    因此,购物袋乃至购物流程的操作步骤简洁明快,尽量让用户在操作体验的过程中顺畅自如,将用户犯错误的机会降到最低,以避免设计问题导致订单的流失。

    \

    7d26cb44f48dda3ad052747f83cffb2a.jpg

    \

    图 - 走秀网购物袋

    \ \
  • 界面设计技巧:\

    在页面中,内容、功能、美学汇集到一起产生一个最终设计。成功的界面设计是那些能让用户一眼就能看到最重要的东西。使用清晰简洁页面元素,元素之间遵循一条流程的途径,而不是页面中所有元素都试图吸引用户的注意,这会给用户一种忙碌、拥挤、甚至困惑不安的设计感觉。此外还需要通过色彩反差对比突出操作重点。

    \

    2a848b00ccc0b5900e05612683750c92.jpg

    \

    图 - 走秀网公共页头

    \

    b3a071b574a73fb853fb000f831381e7.jpg

    \

    图 - 购物袋页头

    \

    为了减少对用户注意力的分散,OpenXiu2.0的购物流程各个环节的页头都采用了极其简洁且淡色调的页头。

    \ \

购物袋-技术实现要点解析

\

OpenXiu2.0是多渠道的平台,其商品在统一管理的基础上实现了多渠道的分销,从不同渠道加入购物袋的商品就必须要考虑渠道的多样性和商品来自哪个分销渠道。这样,购物袋的扩展性就必须得到加强,经过WCS7.0自身支持多渠道的概率,但是却不能完全满足OpenXiu2.0的需求。通过对WCS7.0购物袋的扩展,OpenXiu2.0做到了购物袋的柔性扩展,满足了各个渠道统一到相同购物袋的需求。许多电子商务网站都无法做到将游客购物袋持久化和将游客购物袋同注册用户购物袋合并的需求,而OpenXiu2.0做到了,基于WCS7.0的开发,提出了完美的解决方案。

\
  1. 用什么方法来实现购物车,在很多网站中和很多资料介绍上都采用了cookies,采用cookies有一定的缺点,必须要求用户端浏览器支持Cookie并且打开它,如果用户端浏览器不支持Cookie或者没有打开Cookie,购物功能就不能实现。还有些网站采用Session的方式保持购物袋,但是采用Session保存的方式无形中加大了服务器的开销,而且采用Session保持购物袋在集群环境下必须要精心Session同步等一系列的配置问题,最重要的是当用户下次访问是数据全部丢失。鉴于这方面的考虑,OpenXiu2.0扩展了WCS7.0购物袋,直接将加入购物袋的商品持久化到数据库中,再从数据库中取得购物袋商品数据,显示给用户。\
  2. 秒杀,分期,奢华汇,特卖,预售等其它非常规销售的产品,如果进入购物进行统一管理。OpenXiu2.0针对这些特殊商品和普通商品分别设计购物袋,采用不同的持久化方式存储不同的记录,将特殊商品和普通商品融合在一起生成订单。\
  3. 在显示用户购物袋数量时,采用WCS的高速缓存,避免频繁操作数据库,降低数据库的消耗,提升服务器的响应速度。\
  4. 当用户是游客状态时,利用WCS自身的游客状态机制,将购物袋关联在游客身上,一旦当此用户登录,OpenXiu2.0就将游客购物袋的数据合并到注册用户购物袋记录中,做到数据的同步。\
  5. 购物袋商品数据的分离,在OpenXiu2.0中购物袋商品记录的只是商品的ID,商品的其他基本信息完全交给商品中心,尽量避免了数据的冗余。\
  6. 一旦发现购物袋商品价格等基本属性发生变更,OpenXiu2.0购物袋会主动通知用户,商品价格等属性发生了变化,做到更合理的用户体验。\

关于作者

\

本文作者为走秀产品技术中心负责系统前台开发的副总监高博和高级工程师尹兵。

\

感谢晁晓娟对本文的审校。

\

给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家加入到InfoQ中文站用户讨论组中与我们的编辑和其他读者朋友交流。

内容概要:本文提出了一种考虑不同充电需求的电动汽车有序充电调度方法,并提供了基于Matlab的完整代码实现。该方法通过构建精细化的数学模型,综合考量电动汽车用户的多样化充电需求,如充电起止时间、目标电量、充电偏好及用户满意度等因素,结合智能优化算法进行求解,实现对大规模电动汽车充电行为的协调控制。研究旨在通过有序调度策略有效平抑电网负荷波动,实现削峰填谷,降低配电网运行压力,提升电力系统运行的经济性与稳定性,尤其适用于未来高渗透率电动汽车接入场景下的充电管理与需求响应应用。; 适合人群:电气工程、自动化、能源系统及相关领域的科研人员、高校研究生,以及从事智能电网、电动汽车充电管理、能源优化调度等方向的技术人员,需具备一定的Matlab编程能力与优化理论基础。; 使用场景及目标:①应用于智能电网中规模化电动汽车集群的有序充电调度与能量管理;②支撑科研工作中关于需求响应、负荷调控、分布式资源优化调度等课题的模型构建与仿真验证;③为充电运营商或电力公司提供兼顾用户需求与电网安全的个性化、智能化充电服务解决方案。; 阅读建议:建议读者结合Matlab代码深入理解算法的具体实现流程,重点分析目标函数的设计思路、多类型约束条件的建模方式以及优化求解器的配置过程,可在此基础上拓展至多目标优化、实时滚动调度或考虑可再生能源不确定性的联合优化研究。
内容概要:本文研究了基于Benders分解的输配电网双层优化模型,旨在解决风电出力等不确定性因素对电网运行带来的挑战。模型采用TSO-DSO协调机制,其中输电网运营商(TSO)作为上层决策者负责全局优化与协调,配电网运营商(DSO)作为下层响应者进行本地优化。通过Benders分解算法将原问题分解为主问题与子问题,实现双层耦合系统的高效迭代求解,确保计算可行性与收敛性。研究涵盖了不确定性建模、双层博弈结构设计、协调变量传递机制及Benders割平面生成逻辑,并提供了完整的Matlab代码实现,具备良好的可复现性与工程应用价值。; 适合人群:具备电力系统优化、运筹学理论基础,熟悉Matlab编程语言,从事电力系统规划、调度、可再生能源集成及相关领域研究的研究生、科研人员及工程技术人员。; 使用场景及目标:① 掌握含不确定性因素的输配电网协同优化建模范式;② 深入理解Benders分解在多主体、多层次电力系统优化中的应用原理与实现路径;③ 开展高比例可再生能源接入背景下的电网调度仿真、鲁棒/分布鲁棒优化扩展研究及实际工程项目的技术验证; 阅读建议:建议结合Matlab代码逐模块剖析模型构建流程,重点关注主从问题间的变量耦合关系与Benders割的构造机制,进一步可引入多场景分析、分布鲁棒优化等高级不确定性处理方法进行模型拓展与深化研究。
源码链接: https://pan.quark.cn/s/a4b39357ea24 在深度学习领域,卷积神经网络(Convolutional Neural Network, CNN)是处理序列数据和图像数据的重要工具。 Keras 是一个高级神经网络API,它提供了便捷的方式来构建和训练CNN模型。 本文将深入探讨Keras中的`Conv1D`和`Conv2D`层的区别,帮助读者更好地理解和应用这两个关键组件。 `Conv1D`和`Conv2D`的主要区别在于它们处理的数据维度。 `Conv1D`主要用于一维数据,如时间序列分析、文本分类等,而`Conv2D`则用于二维数据,如图像处理。 1. 数据维度: - `Conv1D`:该层接受一维输入,形状通常是 `(batch_size, time_steps, features)`。 在这里,`time_steps`表示序列的长度,`features`是每个时间步的特征数量。 - `Conv2D`:该层处理二维输入,例如图像,其形状为 `(batch_size, height, width, channels)`。 `height`和`width`代表图像的高度和宽度,`channels`通常对应RGB图像的三个颜色通道或单通道灰度图像。 2. 卷积核(Kernel): - `Conv1D`的卷积核也是一维的,沿着输入的时间轴进行滑动,对每个时间步的特征进行卷积操作。 - `Conv2D`的卷积核是二维的,它同时在图像的高度和宽度方向上滑动,可以捕获空间上的局部特征。 3. 参数设置: - `kernel_size`:对于`Conv1D`,它是一个整数,表示卷积核在时间轴上的跨度。 对于`Conv2D`,它是一个包含两个整数...
代码下载链接: https://pan.quark.cn/s/a4b39357ea24 【华强北悦虎耳机弹窗动画功能nvr升级包】是一款专门为华强北地区生产的悦虎耳机所打造的软件升级解决方案,其核心功能在于为耳机增添或改进弹窗动画的相关特性。在苹果公司的产品中,当无线耳机与设备配对时,系统通常会展示一个设计精美的弹窗来展示耳机的当前状态,而这个升级包正是为了使非官方授权的悦虎耳机也能具备类似的功能而设计的。在接下来的内容中,我们将详细分析升级包的操作方法、技术原理以及与耳机相关的技术要点。 我们需要明确什么是升级过程。在电子产品的使用领域内,"升级"通常意味着通过软件更新或替换设备的操作系统和固件,以此来改善设备的功能表现、运行效率或视觉呈现。在这个具体场景中,"升级包"指的是一个包含新版本固件和相关配置信息的集合,它用于更新悦虎耳机的内部软件,使其能够支持弹窗动画功能。 悦虎耳机,作为华强北市场上的一种产品系列,其设计往往借鉴苹果AirPods的特点和性能。尽管在物理构造上可能达到了较高的相似程度,但在软件层面,非原装设备往往无法提供与正品相同的操作体验,特别是弹窗动画等细节。借助这个升级包,用户可以尝试将这些高级功能移植到他们的悦虎耳机上,从而优化使用感受。 洛达芯片是悦虎耳机及众多华强北AirPods仿制品普遍采用的一种蓝牙音频技术方案。洛达芯片因其可靠的蓝牙连接表现和出色的音质而受到认可,同时也为开发者提供了定制固件的可能性。升级包中的固件很可能就是针对洛达芯片进行特别调优的,目的是为了实现弹窗动画效果。 刷机流程通常包含以下几个环节: 1. 下载并展开升级包:务必确保从正规渠道获取升级包,以防止安装带有不良软件的版本。 2. 连接设备:通过数据线将耳机...
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值