00:00
就是现在呢,订单生成了,信息也显示了,而我们下面就是要实现这个功能,当我现在点击去支付,那他会怎么做呢?它肯定就是到我们的这个页面,比如说你点去支付,咱就是跳转到一个支付页面,在支付页面中就是来显示你那个二维码部分,把这个咱要生成生成一个支付二维码。比如说你现在课程是12块钱,那二维码就是12块钱,用它一扫就能支付,假如你的价格是一块钱,那二维码就是生成个一块钱二维码,用微信可以扫,可以做支付C单,下面就把这个二维码我们给他生出来,但是怎么生成呢?咱们还是。先写个接口,然后在前端整合,而这个二维码跟之前那个微信登录是有区别的,咱之前微信登录我们是直接请个地址,是不是能直接返二维码,但是现在在咱们这个过程中,支付二维码跟他不太一样,支付我们是把一个地址,然后咱需要用到voe中的一个组件下载二维码才能生出来,在这过程跟之前是不一样的,那下面二维码我们来生成一下,咱们就先写接口,然后再整个前端。
01:16
这个啊,我们来具体做一下啊。这个我先。关掉啊,然后咱们写我们这个二维码的生成。我写到这个位置啊。商城微信。支付的二维码把这个做到,而这生成怎么做呢?首先第一个啊,你要生成微信支付,或者说你要做微信支付,他需要有一个准备工作,这是必须的,什么叫准备工作呢?就是首先肯定还是跟咱们微信登录一样,你需要申请一个微信开发者资质,而申请之后呢,由这个微信它的平台给你提供你的支付的一些相关的信息,比如说你的ID,包括什么其他内容,那这个咱需要得到。
02:04
但是这个同样它支持是一个企业用户个人目前不支持,而这里边咱做微信支付需要的这些内容,我给各位已经听供出来了啊,我们来看一下啊,在我们今天这个源码里边的这个位置,一个工具类,工具类中这个地方叫微信支付的账号,咱需要用它才能做到支付,而这账号跟微信登录不一样啊,两个不是一个东西,是完全不一样的地方,所以咱们这里边需要账号,那账号我们大概看一下啊,主要有,其实主要用的是前三个啊。第一个账号是你做微信支付的那个ID,这跟微信登录那个不一样啊,第二个是什么?是你做微信支付,一个叫商户号,因为你现在是企业这个用户,做这个微信支付,你需要有一个这个商户号,第三个叫商户key,就是每个商户的商户号和key都不一样,用这个咱来做这个相关的支付啊,这是我们必须需要有的,所以咱们。
03:05
后面用它生成二维码,然后做操作,各位这个啊,在我这个源码中可以找到,用这个各位可以做一个测试。这个啊,我们听出来的,然后各位如果说以后在实际工作中,那这些肯定都是由公司申请好听出来的啊,我们现在用它做个测试。那这个有了啊,就是需要里边一些值我写一下,包括你微信支付的。这么一个ID啊,然后包括一个叫商户号,还一个商户的key,用这些我们需要做到才能做到微信支付啊,这是第一个啊,然后这个说完之后,下面咱就来开发这个微信生成二维码这个接口。就是微信支付二维码。它的这么一个接口,把这接口我们来做开发,但是我说明啊,这个接口编写是一个比较固定的过程,我这里边给各位来写一遍,各位在用的话,你直接把我代码复制改就可以了,因为里边结构是固定的,它是按照微信这个特点,你把它开发出来就可以了啊,那咱下面来写一下这个接口啊,给各位写一遍,各位用的话直接复制就可以了,因为是固定的。
04:22
那咱们看这个怎么做啊。把这些我先关掉啊。包括这些呃,先放在这啊,然后大家看啊,因为现在呢,我们要做的是支付相关的,所以说我就把这个支付相关接口写到我们的这个里边,就是pay log ctrl里边做支付啊,在里边写支付相关的,那这个名字我们先改一下啊,叫edo的,比如叫这个pay log。包括加上这么一个跨域的一个注解。这个啊,是我们写这个controller,然后在里边我们来写方法,先把里边那个service咱先注进来。
05:01
应该叫这个pay log。Service啊,然后叫paylo service入之后我们来先写第一个接口。第一个接口就是生成微信支付二维码的这么一个接口,这个咱来开发,那下面我来写一下啊,比如现在我来一个提交方式,就来一个get提交,在get里边咱来创建一个方法,假如方法我就叫create。这个native。啊,就是本地的一个二维码啊,就是native先起个名字啊,然后后面我们加上一个参数,这参数加什么呢?给大家说明啊,各位看我这个页面是不是你的订单显示页面,而订单显示页面的上边咱是不是有一个叫订单号,而订单号中我们现在如果说你要生成这个二维码,咱可以根据订单号,因为二维码中呢,要包含你的这个订单的信息,包括订单的价格,而咱根据这个订单号能查出来,所以咱们就传一个订单号的参数,为了后面查询方便。
06:08
啊,所以咱们几个参数就是那个订单号,我就叫O的no。这个第二个注释啊,参数是。订单号。然后写完之后,下面我们写方法,写一个PAR,我叫。在方法里边,咱们把这个订单号给他得到,用咱们之前啊,一直用那个注解,就是pass这个注解加个string o的no。这个得到啊,然后得到之后,下面咱就可以调一下我们思维中的方法,把这个二维码生成我调一下啊,比如里边方法我还是叫这个create。Native把订单号给他传过去。而这个特点跟咱之前那个微信登录不太一样,之前微信登录咱是直接re return rere地址可以,但是现在不一样,咱需要返回那个二维码地址,你需要返回,但是返回数据中呢,它既包含二维码那个地址,还包含其他地址。
07:14
我写一下啊,就是返回咱们那个相关的一些信息,这些信息中的包含咱们二维码的地址,另外还有它的其他的我们需要的信息,所以这位置我们要反一个类型,那反映什么类型呢?做法有不同方式,但按照我们这种结构,我这里强调,因为它信息啊,有很多信息,有二维码的,还有其他信息,所以咱为了后面取值方便,我们一般都建议写这个类型。这什么map,因为map取值呢,你直接传到页面中。通过map的key,这值是否可以取到,最后给他返一个map回到后面更加方便,当然不反map也可以,只是取值可能稍微麻烦一点点啊,但是都可以,我就写个map。
08:03
这个依赖引入,然后有之后最后做个退r.OK。然后点上这个date里边有这个map,在map中包含我们需要的信息,有二维码地址,还有一些其他的我们需要的这些信息,这个啊,咱们写的CTRL了,完成了根据订单号生成二维码,包括其他的需要信息。然后这个写完之后,下面我们在里边把这方法咱做个创建。这个方法啊,生成二维码,这个写完之后来到它的实现类中,实现类中我们写它最终的这个方法,把这个我们来写出来啊。然后这个写法,刚才我说的是一个比较固定的写法,那我们先大概看一下啊,然后下节课给大家就来完成啊,咱们看一下啊,来到我这个零三这个课件中,我们看啊,前面都写过了,然后这是我们二维码那部分啊,然后怎么做的呢?首先在里边我们先根据这个订单号查询你的信息,因为后面需要,然后查完之后你看这一部分干什么呢。
09:15
这一部分咱的做法就是我这个建一个map集合,然后把咱们支付需要的一些参数都放到map集合中,然后放完之后怎么做呢?咱就发送一个AP请求,请求微信一个地址,并且把咱们的map集合给他传过去,但是传的过程中呢,它的一个特点,需要你把这东西啊,变成一个叫叉L格式的参数,并且这个格式需要做这么一个用到咱说那个就是商户的K,把它做一个处理,然后处理之后发送请求才能得到你需要的数据啊,所以咱需要这么做,它里边比较特殊一点。需要你把这数据变成一个叉L格式,但是变的过程中需要用到这个商户的key,而变的过程在微信里边给咱们提供一个固定的工具类,用它咱可以直接去用啊,最终发送请求到我们的结果啊,然后里边包含二维码的地址,还有一些其他的我们需要的纸。
10:15
二维码的地址主要就是这个叫code ul,最后咱们把它返回,然后页面中就可以下载到这个二维码。主要啊这么一个过程,然后下节课咱把它变成完程,这节课呢,主要咱就把这个。生成订单的前端整出来了,然后这个怎么生成,这个过程咱也做了一个详细的分析啊,下节课把这个代码我们最终完成完成生成二维码和支付的这个相关内容。
我来说两句