Simply function implementation

SanCoder 2014-10-27

printInventory实现
根据购物商品的条形码数组实现打印POS机小票的功能。

要提交的变更：
修改：     pos_v1/src/main.js

实现：
1.由loadAllItems()函数建立所有商品的初始购物清单数组shoppingList，数组元素为包含商品信息以及count和discount属性的对象;
2.遍历输入数组，统计商品购买数量并存储在购物清单shoppingList中;
3.遍历购物清单数组，统计商品折扣数量并计算各种商品实际价格;
4.遍历折扣数组，统计总折扣价格;
5.输出。

备注：
仅功能实现，未优化，未重构。
Simply optimizing four time traversal to one.

SanCoder 2014-10-28

printInventory实现
根据购物商品的条形码数组实现打印POS机小票的功能。

要提交的变更：
修改：     pos_v1/src/main.js

修改：
1.getShoppingList函数为获取购物车内商品的种类和每个种类的数量，参数为商品数组和条形码输入，由内部逻辑解析条形码数组，并在返回的数组的对象元素item中增加price和discountPrice属性;
2.printInventory函数由4次遍历减少至1次，在循环中直接计算商品价格和折扣，并统计总价格和总折扣;
3.修复selectObjectInArray函数返回obj对象的bug。

备注：
简单的代码优化。
Simply optimizing function getShoppingList.

SanCoder 2014-10-28

printInventory实现
根据购物商品的条形码数组实现打印POS机小票的功能。

要提交的变更：
修改：     pos_v1/src/main.js
Move the price counting logic from printInventory into function getShoppingList.

SanCoder 2014-10-28

printInventory实现
根据购物商品的条形码数组实现打印POS机小票的功能。

要提交的变更：
修改：     pos_v1/src/main.js

修改：
1.将shoppingList的计算价格逻辑，由printInventory函数移动到getShoppingList函数，使printInventory关注于pos机小票的输出与格式（单一职责）;
add a nullValidate function to validate the parameters at beginning of each function.

SanCoder 2014-10-28

printInventory实现
根据购物商品的条形码数组实现打印POS机小票的功能。

要提交的变更：
修改：     pos_v1/src/main.js

修改：
1.增加空参数校验函数在每个函数开始检验参数;
Replace the function getShoppingList() to a class ShoppingCart for OOP.

SanCoder 2014-10-29

printInventory实现
根据购物商品的条形码数组实现打印POS机小票的功能。

要提交的变更：
修改：     pos_v1/src/main.js

修改：
1.增加ShoppingCart类对内部功能统一封装, printInventory函数仅负责根据数据格式化输出;