电商平台的拆单保存及拆单
最后更新于
最后更新于
订单保存流程
分析拆单的因素
(1)商品的单位类型
目前商品的类型有 桶、套、箱、抵押空桶、购买空桶;抵押空桶的必须拆为一单,客户看不到此订单;
(2)商品的购买方式
不同的商品支持不同的购买方式,购买方式主要有:微信支付、支付宝支付、线下支、水票支付,订单中所有的商品都满足某种支付方式的时候才能使用该支付方式。 其中水票只能现金支付,生成的订单可开发票; 桶装购买时不含水票,所有支付方式都可用,但是水票支付不可开发票; 桶装水购买时包含水票,桶装水只能水票支付,水票支付不可开发票; 购买空桶时使用的是非水票支付,购买空桶无需拆单,支付方式与其他商品的支付方式相同; 购买空桶时使用的是水票支付,购买空桶需要拆单,此时空桶为现金支付;
由于项目的特殊性,目前只有这两种类型的拆单,当然根据项目实际的情况,可能还会有更多的拆单运营,比如发货发的不同等。
拆单规则设计
分析上面的拆单因素拆单的原因主要为商品的种类,相同类型的商品必然是在一个订单当中的,先判断判断商品有哪些种类:
支付方式
paytype:01(微信支付)、02(支付宝支付)、03(现金支付)、04(水票支付)
桶: Boolean false istong 套: Boolean false istao 箱: Boolean false isxiang 购买空桶: Boolean false isgoumai 抵押空桶: Boolean false isdiya
按照分类分别组装5组商品数据
桶: ArrayList [] tong 套: ArrayList [] tao 箱: ArrayList [] xiang 购买空桶: ArrayList [] goumai 抵押空桶: ArrayList [] diya
拆单的情况有下面几种:
1、(isdiya)
将抵押空桶进行拆分(现金支付)
2、(istao)
将水票拆为独立的订单(现金支付)
3、(istong) && (istao)
将桶装水拆为独立订单(水票支付)
4、(isgoumai) && (istao)
将购买的空桶拆为一个订单(现金支付);将水票套餐拆为一个订单(现金支付)。
5、(paytype == "水票支付") && (isgoumai)
将购买的空桶拆为一个订单(现金支付);将桶装水拆为一个订单(水票支付)。
6、none
不拆单