00:00
我们接着前面的逻辑订单我们构建好了以后,接下来们构建每一个订单项,我们在构建订单项的时候呢,要远程查询购物车里边所有的购物项,特别是我们这个远程查询我们之前购物车这一块写的逻辑,我们可以来看一下,那如果获取这个数据来点进来,我们每一次购物车里边选中的这一项,我们获取来以后呢,我们还会给他设置一个最新的价格,所以呢,这相当于我们在这一块再来获取购物车每一个商品呢,我们都能获取来最新的价格,返回到这一块,那就是最新的价格,所以呢,这一块非常重要,因为这是我们最后一次再来确定我们每一个购物项的价格了,那最后确定每个购物项的价格,购物项这个价格呢,一旦确定好以后,我们在订单里边一固定以后,即使我们后台调价,那我们用户呢,最终还是使用这个价格来进行购买商品的。
01:00
好,那现在呢,找到我们购物车里边每一个数据我们拿来,然后呢,我们接下来把这些数据准备给它构建一个我们的订单项,那这个订单项的构建,特别我们这个要订单,特别是我们这个要构建订单项,肯定得知道这是为哪个订单构建的订单项,所我们这个构建所有订单项的时候,我们可以要求它传入一个订单号,这样呢,相当于是为这个订单来构建订单项的,所以我来死这来传一个订单号,然后呢,接下来我们来构造订单,订单呢,这个订单项构造完以后呢,我们把这个订单号也给它保存过来,这是我们这个订单号,订单的ID我们就不用存了,你们这个订单号本来就是一个唯一订单,那接下来我们现在呢,找到我们的这个订单信息们来要进行构建,来点进来,我们现在来看一下我们构建这些每一个订单项都要哪些数据,我们直接来参照我们的数据库来看一下我们这个订单表。我们来。
02:00
电表看一下我们这个订单项表里边每一个订单项要求有哪些数据,首先呢,我们为这些数据来分一个类,我们这个数据呢,首先这个订单项表示我是哪个订单的,那这是我们这个订单号信息,我们已经构建了,然后接下来我们这一项购买的商品的SPU信息,我们发现呢,这一块是SQ信息,下边这一块呢是SQ信息,在下边呢是当然商品我们使用的一些优惠信息,优惠这一块呢,我们都不做,所以我们这块呢可以不用管,然后呢,接下来是我们要商品购买以后,我们如果用户购买成功,要赠送的积分成长值这些信息,所以主要是分为这几个区域内容,第一个是订单信息,包含我们这个订单号,表示我们这个订单项是哪个订单号的订单号,那这个呢,我们已经在这一块构建了,我们就可以忽略掉下来是第二个我们商品的SPU信息,商品的SPU信息。
03:00
然后呢,第三个是商品的SQ信息,商品的SQ信息,然后呢,第四个是我们这个继续来看我们的优惠信息,优惠信息,而优惠信息呢,我们这一块就忽略就行了,优惠信息我们在这一块呢不做,然后呢,第五部分就是我们的这个积分信息,这个商品购买成功以后,积分要赠送多少,那这个呢,我们已经完成了,而且商品的SQ信息就在我们传的购物车的每一项里边,这一块就封装了我们要用的这些SQ信息,那接下来我们就来测试一下,我们把这些信息呢来封装,我们先来封装这个SQ信息,好,我们要给它返回一个订单项,我们就用一个order item entity,好来创建一个这个实体类,那订单项里边要用的数据,我们来先构造SQ部分的信息,Set一个SKU的ID。商品的ID从。
04:00
租车里边我们相当于要用这个购物项来构建一个订单项,那就没问题了,然后呢,再点一个SKU,那SKU的名字,商品的名字,那我们在这儿呢,也有点一个get,我们这儿有商品的名字叫name,就是我们的title,诶这是我们购买的商品的名字,然后呢,再来点一个set,我们SKU的这有一个图片,那这个图片呢,我们在这也有点一个get,我们这个图片在这儿,然后呢,再接下来我们来看一下我们这个订单项,SQ的这个ID,我们已经构造好了名字图片价格,价格呢,我们再来一构造,这个价格呢,我们也是远程查的最新的,好,他点一个set SKU price,那么的价格现在直接从购物车给我们返回到这个最新价格,点一个get price,那价格拿到以后呢,我们继续aem entity,点一个set们看。
05:00
SQ里边呢,还有一个。我们当时这个商品购买的数量和它的销售属性组合,那这个销售属性组合SKU我们set一个,有一个叫Su sal at tr sqt RS,那这个数据呢,我们在这也有我们返回的这个数据来看一下,点一个get SQ at tr,而且呢,我们这个是一个list string,我们呢就可以用string u工具类来看一下,有一个叫string us string us我们使用spring加的,我们看它呢,应该有一个方法,这个方法呢,可以将我们一个数组转成我们的string来可以看一下,这一块呢是传四数组,那这呢可以来传一个集合,我们传入集合,再传入我们的分割符,然后呢会得到一个死string,所以我们调用这个方法collection,好点,一个collection,把我们的这个集合按照我们指定的分隔符,然后呢,变成一个字符串好我们的集。
06:03
那就是cart item,点我们的s q at tr,按照指定的分隔符,这个分隔符呢,我们就用分号,每一个属性呢,我们用分号隔开,然后最终得到我们的这个字符串数组,那我们这一块呢,就是SQTR,把这个SQT我们放到这,好,那么商品的SQ信息,那么这几个呢就有了,我们再来看一下,那么这个商品的SQ的销售属性组合,最后一个商品购买的数量是这个quantity,好,我们把这个数量呢再来一设置,Item entity,点一个set SKU我们的这个数量,那我们买了几个呢?在我们这个cutt item里边也有数量,点一个get count就行了,那现在呢,这就是我们所有的这个SQ信息,我们设置好了,优惠信息不用做,那积分信息呢,我们也可以来设置一下,我们点一个set我们所有的积分,比如我们的成长积分和我们的购物积分。那成。
07:03
增长积分呢,我们都跟它的价格同步,我们比如拿到它的这个价格,点一个get price,那这个价格是多少,我们可以给一个int值,我们就叫int value6吧,好,它的这个价格就决定送他多少积分,那然后这一块set,我们有一个growth,成长积分也一样。那么这个成长积分有了,我们再来设置一个我们的购物的积分,我们现在还是一样,以它的这个价格为例,Price点一个int value给成一个int值,那现在这一块的积分优惠信息,那我们就有了,接下来就是我们商品的SP信息,那这块的Q信息,那现在相当于只知道SQ的ID,点一个get SQ ID,那想要知道SQ的信息,我们还得查,所以我们呢,现在得精确来做一个查询。那这个查询呢,我就希望商品服务来看一下,商品服务呢,有没有一个按照SKU的ID得到SQ信息的,来找一下商品服务的controller,好来找sqo的controller。
08:10
这一块呢,按照SQ的ID找SQ的价格,有我们现在呢想要按照SQ的ID找到它的SQ信息,那们来到SQ info controltr了,这块呢是按照某一个s pou来进行上架,好,我们现在呢就来添上一个信息,现在就是按照SKU的ID给我们返回s puu信息,用public返回一个r get我们这个s puufo8SKUID,那么来看一下我们现在需要呢,传入我们的SQID啊,我们的远程方法呢,先来写到这。我们这一块是一个SQ英法,我们按照sqidd来进行查询,当然它的这个SQID是多少,我们来填到这,这是一个long类型,就叫SQID,它呢获取出路径变量里边的ID值pass variable,好,路径变量里边呢有这么一个ID,然后呢,我们利用它来查出我们的s po信息,那么最终R点一个OK,点一个set data,把我们Su的信息呢先放里边,那我们现在来准备一个查询pofo service,点一个get pofo buy一个buy,一个SQID,好,那么现在呢,返回我们的这一块,那么最终呢,让它返回一个s PU info这个实体类。
09:38
这个实体类呢,在这我们把这个返回的实体类,我们让它远程以返回就行了,好我们希望来填写这个方法,来有一个这个方法的实现,按照SQID找到它所在的这个商品,那这个找怎么找呢?我们先来到我们的数据库,我们来看我们的商品PMS,那我们的SKU是在squ英这张表里边的,我们先得按照SKU知道它的SQID是什么,然后呢,再去SP表里边找到我们SP的真正信息,那么就来写一下这个方法,好,那现在呢,先把pofo的这个member我们注入进来,这呢直接有一个sqfo,我们就用它crl end sqfo service点一个,我们先按照ID来进行一个查询,按照SQ的ID,按照SQ的ID呢,我们先能查到SQ的信息,而这个里边呢,就有他SQ的ID。
10:38
点一个getql ID,那有了QID,我们才能查Q的信息,那我们现在呢是Q英符,我们现在呢,就拿我们这个当前类,我们直接有一个GET8ID,按照我们这个po ID能得到我们的P信息。好,这是我们的s puu信息,把这个SPU信息直接返回,那么这个方法呢,我们就来写好了,这一块返回我们的s puu信息,但是大家注意们的这个puu跟我们这个订单里边要封装的这个数据,来看一下订单项里边要封装的puu信息包括什么?S puu的ID,名字、图片以及分类的ID,还有一个它的品牌,那么这一块呢,看po里边这些名字、图片,分类的ID品牌也有,但是呢,品牌没有品牌名,那如果想要品牌名呢,大家还可以再查一下。
11:33
那么以后呢,就把品牌ID放进去也没问题,那现在呢,就来现在我们返回的整个s po英的这个数据我们就可以了,我们来找到这一块,好按照SQID能找到我们的SQ信息,CTRLC,这是最终我们给data里边放到SQ info来到我们的订单服务,我们订单服务呢,想要远程查询订单服务,订单服务呢,现在就要来查他的po信息,我们希望呢,他能调用远程的商品服务,那么订单服务里边呢,还没有商品服务的远程查询来点进来,那么在这来远程的服务里边来创建一个商品服务的远程接口product份service,那商品服务的这个接口来放上来。
12:19
现在我们要做的一件事就是按一个分client,那现在要调用远程的商品服务,是要调用它这个方法,然后呢,这个方法最终会给我们返回po的in信息,这个方法的详细地址我们把它复制过来,CTRLC把这一块呢,我们复制到这,然后呢po的详细信息。我们在这要接收肯定得有一个VO,我们先把这个商品这一块呢复制过来,它调用商品服务,我们直接将s po实体类的这个VO,我给这呢也放一份,这个呢就叫PU英仿VOPU英仿VO这个VO里边呢,跟那个nity里边的数据都是一模一样的,所以我们来到远程的这个服务,我们把这个nity里边的这个数据全部复制过来。
13:09
好,我们往下复制CTRLC上面的这一块呢,你就不复制了,来到我们的info VO里边,把这数据往这一保存,那么这些数据呢,那就准备好了,接下来我们的远程服务,商品服务能给它注入进来,Product phone service product。份service。Service,好,我们把商品的远程服务我们就注入进来,然后在接下来我们在构建订单项的时候,CR end,我们在这构建订单项的时候,这些SQ的信息我们都好构建,但是这个商品呢,我们得自己来查,Get SQ ino,把SQID我们查到这个商品信息呢,我们再给订单项里边来一起构建。我们把这个商品信息我们现在拿来,这是我们的R对象,直接R点一个get data,那现在用这个数据封装了,用一个type reference,那现在有一个po英仿VO,它呢专门来接收们这个数据,好然后呢,我们得到它的这一块对象数据,如果得到了以后呢,我们接下来就来进行调用,那这个ntity。
14:20
这实体类里边点set,那set PU相关的PU的ID,那么就可以来放进来,那当前商品的PUID,那就是这个,再来加上set po的品牌,那这个品牌呢,我们直接给他保存品牌ID,那也不用麻烦获取品牌名字了,我们把这个品牌ID拿来,它是一个浪类型的,它toth string一下,好,然后再接下来品牌的名字。我们再来保存一个品牌的s puu,有一个商品的s puu的名字,SQ的名字保存了SQ的名字我们也易保存,然后再来加上点一个set s puu的来看一下图片,这个图片我们再在这儿来易保存,点一个get po有一个图片,这个图片信息呢。
15:14
我们pou里边没封装,因为pou的图片都是我们的介绍,而真正的图片是跟SKU关联的,所以们这一块可以不用封装,我们再来看跟s pou相关的,我们还有一个叫分类ID,再把这个呢一封装就好了,再来把分类ID1封装,它点一个set一个cat ID,我们分类的ID当前商品在哪个分类,我们也知道get一个catalog ID。所以我们SQ的信息也准备好,SQ的信息也准备好,以及我们的优惠积分信息也准备好,直接把这个一返回。那么来构建的所有的订单项数据在这呢,就构建成功了,构建成功呢们给它一返回,当然我们返回的呢,是这个NTT,我们把它在这儿来一返回,只要这里边构建成功就来返回,否则我们返回的肯定是空的,好这一块呢,就是我们构建订单项的所有数据。
我来说两句