2.5.4.4 设计处理逻辑
加入购物车逻辑如图6-33所示,由9个动作和一个条件分支构成。

图6-33 逻辑图
表6-4列出了逻辑图中各步骤的说明及编号。
表6-4 逻辑说明
| 步骤 | 加入购物车逻辑 | ||
| 1 | 根据商品ID和用户ID查询购物车数据集,返回购物车集合rows | ||
| 2 | 判断集合rows的个数>0 | ||
| 3 | 是 | 7 | 否 | 
| 4 | 声明集合rows的第一个对象为cart | 8 | 创建购物车对象newcart | 
| 5 | 设置cart的数量=cart的数量+参数数量 | 9 | 设置newcart的商品ID=参数商品ID | 
| 6 | 保存cart | 10 | 设置newcart的数量=参数数量 | 
| 
 | 
 | 11 | 设置newcart的用户ID=参数用户ID | 
| 
 | 
 | 12 | 保存newcart | 
表6-5列出了9个动作的属性设置。
表6-5 动作属性设置
| 步骤 | 动作 | 调用设置 | 输入设置 | 输出设置 | 
| 1 | 数据操作→购物车仓库→根据商品ID用户ID查询 | 执行动作=根据商品ID用户ID查询 目标对象=购物车仓库 | Fshangpinid = goodsID fyonghuID = userID | 返回值类型=集合<购物车> 使用返回值=是 新建变量=是 变量名称=rows | 
| 4 | 辅助动作→声明变量 | 执行动作=变量声明 | 变量初始值=取首个元素(rows) | 返回值类型=购物车 变量名称=cart | 
| 5 | 数据→购物车→Set数量 | 执行动作=Set数量 目标对象=cart | 数量=cart.数量+num | 
 | 
| 6 | 数据操作→购物车仓库→保存并更新 | 执行动作=保存并更新 目标对象=购物车仓库 | 数据对象=cart | 返回值类型=购物车 使用返回值=否 | 
| 8 | 辅助动作→创建对象 | 执行动作=动态数据创建 | 变量类型=购物车 | 返回值类型=购物车 变量名称=newcart | 
| 9 | 数据→购物车→Set商品ID | 执行动作=Set商品ID 目标对象=newcart | 商品ID=goodsID | 
 | 
| 10 | 数据→购物车→Set数量 | 执行动作=Set数量 目标对象=newcart | 数量=num | 
 | 
| 11 | 数据→购物车→Set用户ID | 执行动作=Set用户ID 目标对象=newcart | 用户ID=userID | 
 | 
| 12 | 数据操作→购物车仓库→保存并更新 | 执行动作=保存并更新 目标对象=购物车仓库 | 数据对象=newcart | 返回值类型=购物车 使用返回值=否 | 
表6-6列出了条件分支及两条连接线的属性设置。
表6-6 条件分支属性设置
| 步骤 | 图形 | 属性设置 | 
| 2 | 条件分支 | 条件=rows.size > 0 | 
| 3 | 条件为真的连接线 | 条件值=true | 
| 7 | 条件为假的连接线 | 条件值不需要设置 | 
逻辑图画好后,单击“确定”按钮关闭代码编辑器。等待一会儿,观察请求和服务前面是否会出现红色的叹号,如图6-34所示.

图6-34 服务和请求前面出现红色叹号
出现红色叹号表示请求存在问题,单击“错误检查”按钮,根据错误描述排除错误。