00:00
大家这节课呢,我们完成了呃,购物车的所有的一个流程,那下一步呢,就是去结算,点击这个结算的按钮。我们看一下。到订单点HTML,那这个呢应该是确认订单,确认订单,确认订单呢,确认你的收货地址,确定你的支付方式,确认你的快递的方式,当然了我们这个列表里没设计,你可以把这个逻辑加进去,然后订单的内容,我们把这个订单的内容这块实现一下,然后去支付,那我们这里边需要获取的就是订单的内容。那这个订单内容还有一个需要我们去处理,假如说我不选,当然了就不能去结算,是按钮是灰的,是标点的,对吧,那如果我选一个。然后或者选两个去结算,那我们要知道我们在确认订单的页面,你确认订单页面是确认你选择去支付的,而不是所有购物车的全拿过去,对吧,那我们就需要点结算的时候把这个ID传过去,当然了它的全选选择ID它的本身的这个。呃,购物车点,呃点里边也已经有了,对吧,全计算,那你就看。
01:05
引击的时候全选,那咱们就不用它这个里边咱们单独写一个,省得你破坏原来的那个模板结构,找还不清晰对吧,那我们单独写一个,为了像上次写算那个情况在发生,我们呃,全部关闭掉,我们重新打开。首先呢,找到我们的,呃,购物车。页面。找到我们购物车页面,我们自己定一个,呃,GS去把这个出来。结算他现在直接调用的是这个加电,因为它是模板嘛,所以他直接呃去调用的,那我们把这块改成我们自己的,比如说呃叫做javascript,呃冒号,比如说去订单or这个方法,去到订单这个方法,然后我们在这里边加上。写上这里边做一方吧,花去到订单的页面。
02:05
然后我们这里边要一个呃,Sol把这里边的ID都传过去,当然我们比如说要全选,繁写复选是通过POS传过去的,那我们这里边呢,呃,你可以通过POS把这个选择的订单这个传条,但是最好也就是用POS传,为什么最好用POS传呢?因为呃,别让别人通过UR地址改变这个数字啊,过去不一样的,但是还没有支付,在支付那个流程,在过去真正支付的时候一定要注意这个安全的东西,一定要好好设置一下,而不能随意的用概念去算,那我们这个呢,无所谓,过去之后只是确定一个订单用户怎么改,他也是确定订单直接选是一样的,没有必要改嘛,对吧。那在这里边我们,呃,首先呢,我们要找到这个呃选块。这个是我们的,呃,订单的小块,它下边有个没有用,那我们就直接这个小块。这个复选框我们要想选中的拿过去,我们在每个复选框,我们必须得把这个商品的ID我们得拿过去,对不对,如果商品ID我们都拿过去,那肯定是不行的,所以呢,我们不小框这里边我们得加上一个叫做V流值。
03:11
把谁拿过去呢,那块把这里边的产品。嗯。方式。把购物车的这个商品,购物的这条记录的这个ID给你拿过去,对吧,类型是这个,那呃,名字起一个吧。呃,内你要是如果用GS起不起都行,比如全块,嗯,你要是不用的话,你就把它起起一个就行,那我们。起个名字也可以D拿去,然后选中的用这块去捡。上边的文件里边没有包,但是它一边是几块写,就是在下边。把几块拿去。不然的话,我们找不到这个文件啊。
04:00
注意一些细节。把解上去,这样的话,我们在呃这个页面这块就可以直接写块了,那我们在写块的时候,我们就获取用户选中的,只要是用户选中的就行,那我们选中的把它的ID啊,就V流值选中的V流值拿到之后,我们最好是拼接成,比如用杠号风格,用杠线风格,我们拼接成一个参数拿过去,比如说选择十个,那我们不能十个,因为用盖的方式吧,你不能说。起名什么商品名称作为呃参数的变量名,然后值这个ID的值,那样呢,咱们太累了,你获取的时候你得获取多少啊对吧,所以呢,我们用一个参数传过去,用一个参数就需要把这个购买的商品的ID拼接成一个中号,所以呢,我们先声明一个中线,比如说等于空。然后我们通过解块到服里边,呃,找到所有的。Input标签里边啊。那我起名字了,叫CK,好像是name,等于。CK找到所有的音谱的标签,名字是CK的,但是呢?
05:04
是E被选择的,这样的话,只要是你选择上,那么我们在点击按钮的时候就能把选择的这个input标签都拿到。那选择标都拿到我们去用循环吗?当然你可以用循环,但是它里边有一个,呃,解块里边直接有方法。这个方法。然后它会每一个方,每一个都执行一下这个函数。然后这是执行的这个呃。每一个的所引,然后呢,每一个选项,这个选项我用不上了。他会把这里面的每一个索引都给他。然后这里判断,因为它每一个都执行跟循环的相当于差不多对不对,那我们就判断,如果。我们啊。这个吧,如果。这个。我们选择的。
06:00
这个画它的长度。它的长度也就是现在我们选择了,比如说选择的是五个对吧,那下。毕竟是一个数组,从里边过去对不对。那下标怎么呢?就呃不能够是这个,假如我们想找到最后一个啊,因为我们分割拼接中片的时候,比如说我们要呃第一个ID10连接一个逗号,然后再连接,再连一个逗号,再连接一个逗号,最后一个是不连接逗号的,对吧?所以我们这里边找到它的。长度,比如说有五个对吧,那五个下标是从零开始的,那就是零到四,那长度当然它是五减几减,呃减一,比如五减一,它的长度整个长度就是下边就是从零到四了。那减一之,那假如等于inex inex,它从零,1234转到四这块,比如最大值4EX,最大长度减一等于这个最大值,比如说最大长度是四,那这块到四的时,到四的时候我们就不用这个字符串。
07:01
呃,加。等于,那我们就把这个字串就去反一下就行了,其实不用这么想。那我们这块用这次就代表这个复选框,这个复选框的密度值VL直取它的值。连接到这里边,也就是不连接这个逗号,只连接这个值,这样分割的时候,我们就少一个这个逗号,不然你还得去掉,对吧,否则。我们要str加等于。用这个您这是里边。加等于这次里边了。呃,VL。加上这个值之后,我们在。让它再连接一个什么,你用逗号分割,用什么分割都可以,你比如说我用逗号分割,就像这个一样清空,你可以。我用一下这样的一个过程。这样的话,我们最后一个就不加逗号了,然后每一个都拼接加上一个逗号,因为他每次都执行一下嘛,这样的话,我们的字符串的值就是我们选中的这样的,呃,一个值,你比如说我们现在。弹出一下,你看一下。
08:01
金价。注意下。给他录一下。嗯。选择我的复数,比如说这个。元宝。这四本书你看我选择一本两本对吧,我点结算。三本吧,他应该是三个ID找过来。你看876对吧,我选择两个结算七六对吧,中间是用逗号隔开的,是这样的一个总数。然后我们到哪去呢?这样的话,我们获取到这个片,我们就可以直接用location。点hif跳转到我们想跳转到类里边去,比如说我们跳转到呃。呃,叫做or DR,订单确认,那就订单select吧,订单确认这个页面问号,然后把这个ID起个变量名,那我们还叫做比如说。Ids吧,我们叫这个名,或者加E,呃,Eds整个那个那个重子加上str,这样的话我们就跳转这个页面,把所有的str带过来了,那我们只需写这个控制器,然后获取到这个字串在分割,然后我们就能找到用户想确认的每一个商品的啊。
09:20
我们现在编写一个这个来,还是在购物车的。因为已经到订单了。还是在购物车这块吧,你先不写单的号了。已经到确认订单,但是购物车刚离开的话,那我们还在购物车这里边写。新建一个来的到。Or?这里边变成。过错盖的方法接。那在这里边确认订单肯定也得是要用户登录的时候才可以,对不对,那我们呃,在订单数量订单呃,购物车显示购物车的地方。
10:07
这几个。这个惯例判断登录。看一下,如果用户是登录的。如果是用户是登录的,然后我们再从什么把这些都分割出来,然后用循环去处理,一个一个把它所有的都拿出来,不是说拿,并不是说呃把所有购物车都拿出来,只是选择了,所以呢,我们一定要呃把这个ID获取到,然后呢,我们再呃一个一个去处理。通过,呃。上面获取,上来就获取。获取。纵串,比如说e ids,咱们定义成的是这个名IQESD里边得到参数获取谁呢?我们传过来的这个串EIS。
11:02
这样的话,我们就获取到了所有的呃,这个自助券。然后我们把这个数字分割,分割成一个嗯字符串的一个数组。通过ids。数等于。我们使用eds DR。第一个就行。分割谁呀,分割我们接入到的ED啊,Eds。这样的话,我们在数组里面存的就是每一个ID的。获取到的每一个I,那获取到每一个,然后呢,我们需要通过有几个ID,我们循环几次从数据库里边获取这样的,呃。商品列表有购物车里边的这个数据,确认车吗显示。所以我们,呃。获取ID。从。购物车,然后获取到之后加到一个购物车列表里边,所以。我们先得做一个密保接收。
12:02
L3角线CRT从这里边人民币边又一个啊A。嗯。什么我?打包,打包怎么呢。看一下。找一下这个实体啊。我打错了,我看没打错。
13:02
我们是存在的。他不,他不给我们自动加包了,那我们手动加一下吧。哦。在哪?哦。加了个loser。我再加一个。哦。我们的这个。一般去。没有这个包。我点。我没入吧。好,可以了。
14:02
然后呃,我们从这个ids里边去循环,已经分割了,它是一个数字对不对,然后循环int I等于零,I小于多少次呢?IDs.L这个长度,然后I加加。在这里边,然后我们从这里边去到数据库里边,就得获取到这个呃,购物车的一条商品,比如说我们声明一个变量,假如说叫做呃,ES吧,等于就通过这个里边的DAO,通过它里边我们得到。购物车商品。得到购物车商品,呃,这里边得通过用户ID和产品ID得到购物车商品。嗯。返回来的是这个吗?我们得到这里边去看一下,不行我们就重写一下对方吧。我们一会重写方法吧,只需要我们传一个谁啊,我们因为ID已经传过来了,ID对不对,我们只需要从ids里边的这个I把这个ID传过去。
15:04
呃,一会从写下这个同感的方法get cut少这样的一个方法,通过这里边我们就可以,呃获取到一个商品,那获取到一个商品,我们每次循环获取一个,那我们把它。点ADB添加一下的,这样的话,我们就获取到所有的这样的,呃,把这个所有的我们选择的ID的都获取到了,都获取到之后,我们就可以把它发送到前端,然后用前端去显示。如果是登录的,呃,否则如果没有登录,如果没有登录,我们就。加上这个。否则。进行登录再去不买,这是判断一下,然后在这里边如果登录的我们就QS。At把这传过去呢,把这个商品列表传过去,商品列表是哪个呢?就是我们的传过去之后,我们在这里边就可以用request。
16:04
点啊。Cat。呃。QEST。这个。转到比如说我们or DR订单点JSP页面,我在这页面里边,便你这个确认这个订单就行了,当然了你想显示地址啊,或者什么用户名什么的也同样传过去,Re。S。嗯,Rep啊。O跟两个转过去就可以了。呃,商品列表我们这块给加上字符串第一个。那现在我们重启一下这个方法。用ID来获取我们找到我们的这个。呃,这个文件。卡着,这回别开错了。错了,我们就找不到了,对不对,然后我们这里边,呃,需要盖商品,我们原来有一个。
17:05
是通过这个来完成的。我们现在。需要的。不是。这个ID,我们需要的是一个什么购物车的这个ID。那我们这块就叫一个就叫做字符串的ID,然后我们用一个产品接收生命字符集,没问题,查询所有的通过,呃,因为购物车的ID一个就确定了,你不用加多个条件,所以我们这些条件呃都不需。都只需要一个,什么只需要一个。A卡。问号就行,其他的这些呃,都不需要了。这个留着吧,后边那类型没问题。然后。第一个35。把第一个参数传递。ID,我是UID。执行,我就要每一个执行。
18:00
可以了,然后我们看一下在订单选择页面,现在就没有错误了,获取到所有订单列表就可以了。然后我们这个时候就可以把。他默认的那个订单点,就是原来去结算的这个默认的。不管了,一会我再重新登录一下。他这里边有一个订单点门复制下。可能下,然后我们新建一个。O。Or dr.GSP点。你跟他一样转过来。修改一下。修改一下,然后它这里边儿需要用到标签,我们到别的里边找一个。有。转过来。
19:02
占了一半。游戏。来我们这回。运行一下。加图书我先登录一下。然后读书。选择一个。你看。我们选择两个。结算现在就能把这两个,比如选择三个,第三个就能传过去。但是我们这块病例列表还没有,我们看这块儿默认的是有个张三一,它是原来它的一个模板就叫张三一,然后默认地址,那我们可不可以在这里边。把这个地址,比如说。哦。新增地址,默认地址这个名称我们换一下吧,换成我们呃。
20:00
因为咱们是登录的,登录的呢,可以从30里边,也就是从内幕里边,我们直接获取到这个值。就是呃,地址信息啊,这些东西,用户里边有什么的,我们直接就可以在这里边,然后让用户比如说去确认啊,去处理啊,对不对,那我们直接。通过内幕里边,也就是30里边,比如说30里边有个啊。用户表。用户。忘记了用户里边都有什么了啊。找用户的实体。呃,实体。用户的视频。用户ID用户名对吧。Username user用户名,把用户名拿到默认地址。嗯。比如说编辑删除这个地址吧,咱们可以也一样。用那点呃,U线A。大家用户地址是不是ad is问题。
21:03
来,我们刷新一下,看看这里边儿。一样是张三,地址呢,是北京西那边对吧,对吧,那现在我们便利这个商品那边,这是我们一个重点要处理的一个。一个地方。那首先呢,我们得需要找到。我们商品的订单内容在哪?这是订单的内容,我们就按照这个把它原封不动的把它变出来就可以了。啊。格式。两个我们留一个就行,其他的不管。这块来返回购物车,那我们就是呃,Show。首CT吧,收看订单内容,然后这会加上。冒号。冒号。
22:00
为什么没有提示。难道我。结束了吗?是过来的那。只是没提示而已。然后。结束一个。这块便利里边的每一个。我们it EMS等于。高大号里边的,呃,还是通过请求的里边。啊,这些你可以不用啊,上火。我们变过来变过来的,然后VR我们起个便利名叫,比如说R随便起一个。然后这里边产品图片名变成嗯。比如说IMAGS下边的PD。根号,然后是RS传过来的,里边有一个呃,CT。小线P线。
23:05
购物车里边的一条记录拿过来,然后这个是名称。名称。转过来啊,那我们就是P面,然后啊。购买的数量,购买的数量就是我们在里边选择上选择的时候。的部门是。P。不,我们这个还不能,我像这个里边,我们写的时候是小写,然后。RT消线消划线。哦。购买的数量,购买的数量我们的字段叫什么?这个。中间不带皮的。然后价格。产品的价格。
24:10
点什吧,因为我们用整数算,没有用那个五点动产品的价格应该是有个P下线C。好,我们看一下刷新一下。家传过来啊876。这里边儿没有。传过来是不是那就错了?Re e里边shop我们到。订单选择这里边儿巧克力。没问题的,然后到OGP。还有异常。哦,就是原来的异常。你再重新。运行的。
25:01
我看一下。Select。记住。张三111决定。你说。两道。选择题。选择第三个计算。197已经传过来了,是没问题的,那我们在这个。订单里边。获取的参数。获取的参数我们这块。打一下。嗯。因为。这里边儿又。
26:01
咱为什么啊,这块我是每次他都告诉我旗舰登录,为为什么没告诉旗舰登录吗?因为这块少了一个单号,咱们以前出现过这个问题。然后过来。这样才对。张三。有有有。这个这个页面没写。这个写的够深。选择选择两个结算。我们到第一面里边看一下。密。EIDS。有。
27:06
后。电脑。这是没问题了,这一步没问题,然后。哦。这一步也到那页面了,也进来了。确认一下eds分割,分割成字符串数组,这一步应该是啊,没问题的分割。不对,这不就有问题了,我们得分割什么呀,得按什么分,他分割参数按逗号分。按逗号分组对吧。都过去。一下有点着急。13111。选择PP。这个一半,这个一半。计算过来了。但是。
28:02
比较难看对吧,那我们改一下,这个都是小问题,比较好改吧,比如说呃,产品图片这块我加一个。关注。100。呃,其实给一个给一个就行了,它主要是超宽对不对。你给一个吧。高度。也是100。我们刷新一下。好,这样就漂亮了,但是这里面确认订单,你看每一个。没问题。对吧,每一个没问题。价格啊什么的,数量啊什么的都可以。这个。这个数量。我们需要将它。呃,两个得乘在一起一下对吧。一本书多少钱,这块是这两本书总价多少钱,不是一本书的这样的一个价格,我们这块只放了一个一本书的一个价格,对吧。呃,名字。这个价格这个位置,我们这个价格以。
29:05
这个数量。才可以。你看两本书多少钱对吧,两本书多少钱是多少钱,然后这里面还需要一个什么,还需要一个商品金额总价,就是合计是多少,这两个界面的,呃,数字应该是一样的,对吧。他这块没有用GS功能获取,那我们这块用Java在里边,我们在这里边获取的,因为循环已便利出,怎么已经便利出每一个呃商品了,那便利出每一个商品,我们在这块就取出这个价格,然后获取一个总价不就完了吗?那我们在这块声明一个,呃,总价int,比如说to PI等于零。这么一个总价,然后我们在这里边。他每次循环已经取出了一个,取出了一个商品了,那我int,比如说呃,它的每一个的价格就是B。
30:03
呃,P就是咱们说的小GD小G,咱们就随便起一个例子,变量从ES里边,呃。Get得到它的产品的。价格,然后乘以呃,ES里边得到。购买的这个数量这两个,那有个小G,小G我们要没有,我们得要总数对不对,然后TP加等于让它等于什么呢?小G的。这样的一个价格,然后我们把这个属性怎么办,总数我们翻过去就可以了。这块我们用上。总价。To,然后我们到文件里边。订单文件里边找到。
31:00
呃,BC00,我们就过了这个位置。加上一个,呃,我们把这个总价直接放到这块就可以了。呃,前面的人民币符号我们留着gpi,然后同样。这个位置,这俩位置应该是一样的,确认的对不对,那我把这个位置加上。好,最后我们再刷新一下,他说得先去登录。因为重启了。默认。来,我们到。应该每一个购物车都加,直接就能选择选择。选择结算。三本书。总价247 247,你给算一下。六百八百对吧。就是。
32:00
这样的话,我们就把这个订单页面确认就上完了,那用户看着这个订单确认,那下一步就什么去支付。那是我们在往后边去写的一个这样的一个过程,确认的时候信息,购买商品的信息,地址信息,支付及快递信息,这些都需要确认。然后再继。
我来说两句