00:00
然后呢,但是他怎么转呢,他是这样,他说说这样转换的时候,要把线索中有关公司的信息转换到客户表中,一份转换成客户表中,然后呢,有把现有有关个人的信息转换到人里表,这是我刚才给大家说的最基础的,这俩是必须转。这是我们整数据转换,数据转换这样好看家,这是我们说的这样就行了,对好这个转来哈,这是必须转的,还有什么需要转,刚才给大家说了就这个。把线索中的,把这一条线索下的备注信息转化到客户,备注表知道转化到客户,这将来高级销售人员看有这个线索转过的客户的时候,看他的明细的时候,以前初级销售人员对这个客户做的备注在这的时也能看到。在它下边也能列出来,所以转换到客户备注表中,客户也有个备注表,知道吧,把它里边备注信息,然后转到这,有关这条线索的备注信转到这里,所以我们这个地方也是这种,把什么把该线索吧,该线索中有关公司的信息转换到客户表中,然后把该线索中有关个人的信息转入到联系人表里,还有把什么把该线索就这一条线索。
01:24
把该线索下所有的备注信息,信息转换到什么,转化到客户备注表中一份,备注表中一份行吗?将来那么高级销售员看这个备注的时候,刚刚转过这个备注,也能看到那些以前做的备注,然后还要什么把该线索,该线索下所有的所有备注信息还得转换到,转换到联系人备注表中,一份备注表中。
02:06
一份,知道吗?都转过去。这样的话,高级销商在看这个生成联系人这个信息的时候,也能看到以前在线索那个阶段做的备注,知道吗?还得干什么,还得这样把这个线索以前参加过的市场活动那些relation表里边那些关联关系转化到什么,转化到联系人和市场活动关联关系表。知道吗?联系人和市场活动也是个多对多的关系,知道吗?为什么也是多的关系?但你想啊,联系人这里边数据都是从线索过来的。那么线索和市场活动是多对多的关系,那联系人是根据线索来的,那么联系人和市场活动也是多得多,怎么多得多了?以前是一个市场活动可以产生多个线索,一个线索可以参加多个市场活动,那联系人是从线索转过来的,那一个市场活动也能产生多个联系人,那一个联系人也能参加多场市场活动,就他也是个多组,他也有一个relation表,联系人的市场活动不能吧?
03:11
所以在我们这个地方也要把这个线索,以前参加过哪些市场活动,这个关联关系,跟哪些市场活动有关联关系,也要掌握到,有它生的这个联系人和这个市场工有关联,也要转过了,所以我这个地方把它写一下。把把什么把这把我们的该线索和市场活动的关联关系。关系转换到转换到什么,联系人和市场活动的关联关系表中,嗯,他也有一个关联关系表,哪一个表就是这个表,就我们这个表,联系人和市场网关关系,他也有外键。联系人ID和市场活动的ID,说这个联系人参加过哪些市场活动,建立一个一个关联关系。
04:01
那么将来你这个线索参与过哪些市场活动,都往里报这个联系人也有,他生成这个联系人也参与过哪些市场活动,也要往里边添加就行了,往里边转是这个意思,知道吗?那你说人为什么要转了,不转了行不不转不行,为什么?因为将来这个线索要删了,那这些关联关系都得删了,都得删了,以后高级销售人员想看看哦,这个客户或者这个联系人参与过哪些市场工作,不知道了。啊,那不知道了,那我说那就不好跟踪了。信息就断了,就这意思。好,这是我说,那那有同学说了,哎,老师那有这个线索生成联系人和市场活动也是个多得多。那有这个线索转化的客户跟他是不是也是个多对多,是也是多得多,为什么你想同样道理啊,线索和市场活动多关联,是个多对多,客户也是从线索转过来的。对,一个市场活动也可以产生多个客户,一个客户也可以参加多场市场活动,他也是个多组,那你老说这个地方有没有关联关系表需要转文。
05:07
这个没有关联关系表,你说这个地方为啥没有?因为呢,因为客户对这种关联关系不感兴趣。数据多了,感兴趣我们才什么建立表,把它存起来,不感兴趣的数据你存它也没什么用啊,客户以后不统计客户,就是用户不统计客户和市场活动关联关系,他只统计联系人和市场关联关系,所以我们把这个关联关系转过来,客户和市场活动虽然也是多的多,但是我们不研究它,所以不用说不用干了,用告知道吧,所以在我们做软件,你说大家看到底创建哪些表,这些数据现实世界中的在看看你研究的这些数据太多了是吧。这些数据太多了,哪些数据需要创建表保存起来,哪些数据不需要创建表保存起来,那看什么?看需求,看用户对他感兴趣吗?
06:03
知道吧,你比如说大概就就像我们这个,你做个学生管理系统,创建个学生表,这个学生的信息有什么姓名,年龄,学号。还有什么这个什么成绩,这些我们感兴趣的数据,创建成字段保存起来,那一个学生的一个信息,学生的信息是不是只有这些信息啊,那肯定不是的,还有什么呢?学生的身高体重。是吧,家庭住址这些数据多了一个学生的信息让你说什么,你那那那都多了去了,是应该说什么?几十个甚至上百个信息中,这些信息都保存起来吗?不保存,感兴趣的设计张表保存起来,不感兴趣的不保存。我们这个地方也是一样,联系人和摄像东有关联关系,那么将来我要统计它,所以我要把它怎么转过来,保存起来。客户和市场虽然也是个多得多,我不研究它,所以这个关联关系没有,所以我们不转换系知道吗?所以这样的话呢,我们这是我们说把这个线索中有关线索和市场活动关联关系转换到联系人和市场活动关联关系表怎么转,现在先别管,我还没写代码呢,大家当然不知道了,大家先知道把这些数据需要转过去就行了。
07:21
具体怎么转都是代码的事儿,知道先把这个思路想明白了,知道吗?好,这样的话,大家我们要把这些数据转过来了,转过来之后呢,还有把这个线索以及它下边备注和关联关系都转过来了,那下边呢,下边这样还有什么,大家还有这样,如果需要创建交易这个状,假如说大部分都不需要创建,假如说用户就需要创建了,他就点择的什么,该填的填了,该选的选了,该什么该搜的搜了,然后呢,这如果需要创新交易,那你在后台还得往交易表做价格记录。因为这个地方有个交易表啊,知吧,往交易表时加的,就如果如果需要创建交易,如果需要创建交易交易则还要往交易表中加一条记录。
08:14
添加一条记录。记录当然是不是每次都每次转弯都加加教记录,但也不是大部分情况都不需要加,只有那些碰到那些人啊。有特别强烈的购买意愿的客户,他就加,到底加不加他可选了,万成我们他做成可选了,知道吗?好,这是我说,那假如说他不不需要创建交易就无所谓了,假如说如果需要创建交易呢,那光交易边加记录,交易边加记录怎么了?最高级的销售人家道在查看交易功能的时候就能看到这笔交易了。谁去负责实施的,他也有个所有者,那他就可以跟踪这笔交易了,怎么跟踪,点进来可以看到交易的名义信息,那他跟踪这笔交易的时候,他也想看一看。
09:04
这个交易他在初级销售阶段,那初级销售做的一些备注,他也想看一看懂吗。所以还得把什么。初级销售阶段,在这个给这条线索做的备注转化到交易备注表中一份,那么最高级的销售人员再看这一条备注的时候,再看到这条交易的时候,也能看到,以前在初级销售阶段做的备注也能看见。所以如果需要创建交易,还需要做这个事,如果需要创建交易,创建交易,创建交易,然后呢,则还需要把什么把该线索下的备注,该线索下所有备注,备注转换到转换到交易备注表格一份。
10:00
一份知道吗?这样最高级的销售,销售人员在查看这笔交易的时候,就能看到以前对这个公司或对这个个人做的一些备注都能看见了,这样他比较好跟踪了。当然如果不需要创新交易,这这个地方就不用转了。这是我们账的好,这是我知道,那这样的话,大看我们把这些数据该转的都转完了。把这些数据该转的都转了,那该转的都转完了怎么了?那初级销售人员以后就再也不负责这笔这这这个线索了,干什么?把这个线索删了,那把这个线索上,这个线索是附表,它下边的子表记录,先先删了哪些词表,这个线索下的这些备注,以及这个线索下跟那些市场活动关联关系都得上。然后最后把这个线索上了,所以那是什么叫删除吧,先删子表,删除该线索下所有的备注上,然后再删除该线索和市场活动的关联关系,然后最后删除该线索,知道吧。
11:13
这样的话,初级销售员再也看不到了,高级销售人员走看,在相应的功能上边就能看到相应的数据了,他们接着跟踪就行了,知道吧。这是整个这个线索转化等,这是这个数据转化,就这个过程。知道吧,而且大家他这个地方要求了,要求什么,所有的这些转换的这些过程必须在同一个事物中完成。要么同时成功,要么同时失败。所有的这些操作。有为什么同必须这一个事,你不能说前几个转成功了,后几个转失败了,这样整个系统里边数据就不一致了,知道吧,所以我们说所有这以上所有操作,以上所有操作能让他必须在一个事故程同一个事故完成成必须在同一个事故。
12:07
那怎么,怎么才能保证在同一个事务中完成?那对,是不是这些操作必须在同一个service方法里边完成,对,因为我们的事物加在service呢,也是在同一个service方法中,对,所以这个service方法我们说应该是非常复杂的。方法不能完成知道吗?那service怎么完成第一步做什么?第一步先转到第二步做,怎么到第三步做到第四步转,到第步为什么一直转,那这样转了,每次转其实都是操作数据库,Service不直接操作数据库干什么?掉map,那这里边每一句话就是一个什么serve数据据。那对于目前我们来讲,我们现在写的那map代码,一个map方码只能执行一个so句,所以你会发现在这个service方法里边要执行这么多的so语句,它得调这么多的map,所以在这个service边要调十几个map,你知道。
13:13
所以这是我们说这个他这个线索转换的这么一个数据是吗。好,这是这样,那下边呢,大看还有一些特殊要转换成功了,如果转换成功了,这个线索机器相关数据全删了,删了之后怎么跳转到线索主页面,那在线索主页面到列表里边这条线索就查不到了,知道吧?再一个如果转换失败,提示信息页面不调换,这是我们整个线索转换的这个需求,我们就给他说到这,大家对这个需求有个大概了解之后呢,下边我们一块来简单设计一下哈。看看要做这个功能,这个流程到底什么样子的,知道吗?好,下面我们来设计一下,那设计的话我们还是简单这个地方再画一个流程图。然后呢,这个是右键设计一个流程图,然后呢,这个地方做线索转换,线索转换这个明天也不一定能写完啊,这个对这个对吧,尽量能能设计,能写多少写多少,先看这个按这个流程是比较复杂的,好了,下边呢,我们这个地方来做这个来设计这个流程,这个流程我们说所有的流程都是从客户端发起的,那这个客户端发起来一个,这个地方来一个客户端,客户端客户端如何发起需求,说的很明白了,客户端想做线索转化,他就在线索明细页面上面,在跟踪的过程当中发现这个线索有购买意向。
14:36
点这个地方,就用户点击转换按钮这个地方,它就发起这个转换流程,用户点击转换按钮,转换按钮在哪?点击在线索明细页面,在线索明细页面啊,点击这个转换按钮,大家看一点转换按钮发生什么事,点更。
15:06
对,跳转页面,跳转哪个页面,现给我转换页面。跳转页面哪哪一个页面,就这个页面叫线索转换页面,就这个看吧,就这个页面,这个页面我们说在外部音范页面从客户端是不是不能直接跳转,那还要进攻CTRL了,那进入CTRLCTRL上可以跳转,关键是这个页面所需要的这些动态数据是不是先查出来。传出来传到页面上面,然后显示在跳转知道吧,所以说大家看我们说这样他一点这个地方应该向后台发一个请求。后台CTRLL先把数据查出来,这个线索中这些信息查出来,查出来之后,然后呢,再跳转到这个页面这样了,所以说呢,我们他一点那个转换钮,向后台发一个请求,后台这个请求L到后台有个CTRL来处理的这个CTRLL,我们说这个CTRLL是新创建CTRLL还是在CTRL系上加分啊。
16:00
啊,是不是加方法了,对,为什么他还是跟线索有关的,还是操作线索表里边相关的这个什么这个线索这个什么这个目录资源目录下边相关的功能,所以还是在原来可录CTRL地方加上。然后呢,在这里边加一个方法,然后呢,他一点那个转换按钮,向这个CTRL发一个请求,要跳转到线速转换页,我们发一个叫跳转到请求啊跳转这个请求大家看同步到是一步的,对同同如是不是跳转页面了,对跳转页面同步的同步的。然后呢,这个地方来个同步请求,那同步请求需要提高什么参数。对,那你看这个CTRL需要什么函数,对CTRL需要什么参数,他干什么事,他干什么事,我们说干两件事,第一件事对查询这个线索信息是不是这样,总因为那个线转换页面需要信息啊,再一个是吧,是不跳转页面啊,跳转页面不需要数据是吧,是不查查查那个线索信息是不是需要参桌对让这个线索ID,所以但他得需要一个线索的ID传过,发个同步请求,一点那个转换按钮,发一个同步请求,把这个ID传过去。
17:26
传开之后,CTRLL接到请求之后,两三个知道第一个接收请求有参数,获取参数那吧,就一个参数,不用重装,下边直接是第二个职责,处理业务。处理业务,我们这个地方就处理数据,处理什么数据。就是把要跳转到转换页面上面这些数据查了,这些数据就是那个线索的信息吗。所以说那他要什么去查这条线索,要转换的这条线索的信息了。那查这条线索信息,他不能直接查调service,调谁的service线索的service要查这条线索的信息。
18:05
知道吗?先把这条线索的关键信息先展示出来,你要转化,你得看一看它,看清楚了再转,就这意思,所以那我们这个地方来看,我们说像他调查的一个方法干什么,根据ID查看这个线索的这关键信息。那关键信息大看这都有哪些信息,所name称呼,公司的名字,所有者,大家看这些有关联字段你知道吗?关联字上都会显示名字,知道吧,所以说大家这个是查这个线索信息的时候,去查询这个时,根据ID查询这个线索的,其实是明细信息是吧,但只不过明细信息它不是查所有字段,就查那几个字段,但是有关联字段也是查名字,所以我们知道它里边有方法,这个方法来一个叫que qua叫克Lu知four。For,然后呢,对,然后呢,这个是by ID,抓住传统线索的ID,根据ID去查询这个线索的基本信息,知道吗。
19:08
这个明细信息去查了,那查的话他不能直接查调map这种调线索的map这个东西来个可录map,然后呢,大家看在这个map里边提供一个方法,这个方法也是根据ID去查询线索的名细信息可录,然后呢,Four q。By ID这里面传了一个线索的ID,然后呢在这个map里边,它就可以访问数据库,然后呢执行搜索去。执行circleql语句,然后呢去查询线索的明细信息,其实就是我们就需要几个字段而已,是吧,这是我们这样,然后呢把它什么拿过来就行了,查完执行完了之后,把执行结果往后发,根据ID查,如果能查出来只有一条记录,把这一条记录封装成尸体的对象往回发。
20:02
然后封装好了之后,把这个实体对象继续往放,谁调的范围推可录把这个对象往后放。这样的话,那我们这个controller就拿到这条线索的明细信息了。拿到之后大家看这动态数据都有了,有了之后下边就可以是不是就可以往回返了,以网页的形式往外返,它不能直接返回网页,它要跳转网页,知道吧,跳转哪个网页就那个什么线索转换的网,哪一个叫convert.gsp。然后呢,大家家那转之前先把这些数据传过去,那传过去的话,那就通过做物预传,所以把什么这个数据啊,把数据啊,把数据保存到作域种,我们就request中,然后呢,跳转页面这个跳转。那他这个跳转是不是还是请求转发,对通过作用率,通过request传出去请求转发。
21:02
那这个convert JSP接收到转过来请求之后,他的职责首先从作语中把数据取出来,来什么获取数据啊,通过ER的方式获取。然后呢,获取完了之后,把数据显示到页,显示到那个什么这个转换页面上面,我们把它叫渲染页面都显示完,显示完了之后,然后呢,把这个页面运行的结果我写P,这个是个响应,返回到谁谁发的请求访问谁发同步请求,浏览器发到响应信息给他浏览器,浏览器能解决的数据。网页叫HTML网页,从技术角度来讲,这个响应信息是GSP返回的,JSP运行的结果就是网页。然后呢,这个网页返回到浏览器,浏览器最擅长的就显示网页,那浏览器那浏览器,然后呢,在工作区中来什么显示线索转换页面。
22:07
转换页面知道吗?这样的话用户就看到这个网页了,上面有这条线路的关键信息。所以这个流程我们就设计好了,先来到这个流程啊,就是我说这个这个流程我就设计好了,那么这个流程设计好了,那下边就可以编码实现了这个流程。这时候啊,这是那编码实现的话,就是编码实现从底层开始写,先写map。在线索map里边加一个方法,根据ID去查询线索的明细信息,这个方法是不是以前已经写过了?对,查看线索明细有人写过了啊,所以可以直接复用了,不用写了,这个就这个方法,线索的map线索map就这个哪一个拿,当然就这个方法啊。根据ID查询线索明细,他的收入就就这个。
23:04
这咱们写过了,然后呢,酸味的层再看。这个方法是不是也写过了,也写过了这个方法就这个线索的service,就这个直接掉就行了,知所以大家我们说这个map service都写过了,不用写了,下边直接写这个CTRL,然后在线索CTR里边加一个方法,这个方法干什么?一访问它要跳转到线索转换页面去。所以我们这个段来直接加这个双法就行,在线索CTRL里边加一个方法啊。然后呢,这个方法来一个加一个CTRL方法,帕布雷克知吧返问值返回什么类型的对string类型的跳转页面吗?返回那个页面的资源路径,下边我们来写这个双耳名,双耳名建明之意了,它既然要跳转到转换页面,我我就叫它了,叫to convert work是吧是吧,跳转到这个页面去,然后呢,这样就行了,那给它分配一个URL来用个request map屏。
24:06
知道,那这个UR,我们说要和他处理自源路径,保持机致他处理的自转路径,将来这个方法要跳转到响应信息,要回到那个什么。转换页面要和那个转换页面的资源路径保持一致,转换页面convert的JSP,那它的资源路径work奔置可录,那么所以我这个直接写了叫沃奔驰,然后呢这个是可录,然后呢这个地方来的资源的名称和方法名一样。第度就行。那就将来从前台发这么一个请求,交给他来处理,他跳转院不用加入王宝,在这里边定一个刑参,接受前台传参数,什么样的刑参?就这ID。你要跳转到哪一个页面的线索转换页面,就哪一个线索的转换页面,把那个线索ID重了。
25:00
所以在这地方定一个形川,这个形态来一个叫string,然后呢来一个ID,知道这样的话,大看这个方法就定义好了,方法定义好了,现在我们已经写到这了。嗯。接收到请求,把参数拿到下边怎么办?掉色的方法,先把这个线索的这些信息先查出来,所以我们这个地方来个调用。然后呢,Service层方法,然后呢来查询线索的明细信息,其实我们就需要这几个关键字段信息啊,那有老师关键字段信息的话,那别的字段是不是白查了。那是按理说是白查了是吧,按理说是白查你没用啊,那你能不能能不能就再写一个方法,就查那几个字吗。对,没必要了是吧,一个是麻烦,再一个呢,你就查那几个字段,你查出来那个对象,别的那些字段没没查出来值,是不是他们该占内存还会占内存啊对,所以效率提高不了是吗?嗯,所以我们这个状直接复用这个方法,嗯,好,下边我们直接调动S方法,那调线索的service,它里边有个方法叫query可for啊query for detail by ID,这个ID是从前端传过来。
26:24
这样情况,然后呢,大家我们这个地方来一个那定义一个实体类保存,这样的话,大概我们已经把这个数据查出来了,查出来之后现在已经来到这来了,数据查查出来之后怎么要跳转页面,跳转之前先把数据保存作有一种传过去,所以我们下边继续了把数据保存到作功率中,我们这个地方就是request,然后保证request中我要拿到request,拿request在这里边来一个助意,来一个request。
27:01
然后呢,我们这个地方来一个这个东西request.side和垂,把我们这个线索这个实题的对象放出来K,我就直接叫C了值,那还是这个对象知道吧,然后下边请求转高。请求转发,那这个转return转发哪个页面,把那页面资源路径写到这,我们要找到convert JSP,那么convert JSP的资源路径小段。肯摩,那它的作战路径沃克奔驰可录知道吧?下面呢,沃克奔驰可录知道吗?肯多。它会自动加上前缀和后缀,这样的话这个controller层就行了。CTRL层写完了,后台代码就写完了,那后台代码写完了,下边就签到了前台,我们先写这个页面吧,先把这个页面改成JSP啊,改到牵扯到base标签啊,牵扯到我们的这个什么,牵扯到这个贝斯标签,还有什么这个编码格式是吧,贝斯标签啊。
28:10
如果用到GCL,还需要加GCL。那我这么拷过来吧,那这个地方拷过来,考过来一个直接拷过来就行,我直接把他们拷过来。C,然后呢,放到我们这里边扔去了。然后这样加上被子上所有点点杠CTRL啊选中之,然后呢替换掉这样行,然后把它改成JSP,右键改一下,然后呢这个地方来改成JSP,然后呢把它改一下就行,然后呢点这个地方确定修改。这个页面改好了,改好之后它上面这些动态数据都应该去享受。那就显示呗,通过E表达式取出来显示就行了,那先看这地方,这大标题这个地方,这应该是那个fo,那你看看吧,大标题找找大标题大,这是模带窗口,不用管它,然后呢,往下边找,这是大标题,知道吗?
29:04
这应该从线索里边取完,那取到到了符号来取到来刻录点,对full name这一个地方来一个,这一个应该是个称呼,对到符号那个可录点这个称呼怎么比较长,比较长的,我们这个来考一下就行了,知道吗?然后呢,这个地方就这一个,然后呢,把它拿过来,这样行,这是个公司的名字。Dollar for号啊,可录点对叫啊。对,看看,然后呢,还有什么呢?康,这是不是也是公司的名字,对,也是公司的名字,这这是下边这些这些东西,这些公司的名字就这样。对这样,这个地方也是一样,对,把它拿过来也是一样这样。
30:06
这里边儿是创建交易的,这是交易的表达,一会儿再看交易的表达。你看下边有个所有者,这把所有者是这个线索的所有者,就是这个地方到了22层啊,这个地方对可录掉,嗯。边叫O。好,这是文章,其实大家这个表单里边也有动态数据,就这个表单里边哪些动态数据你看一看,你点开看一下,首先这个交易的名字你看吧。这个地方有个公给哪个公司创建的交易,他这个交易的名,交易名称的命名规则,给哪个公司创建,先把这个公司的名字写在前面,那我们给哪个公司上去就给这个公司,所以这个应该是个动态的,也是从可录里边取,那就取吧,就这个地方。这个地方应该是取Dollar符号,叫刻录点comp。
31:04
好,这是我们说的这样,这样的话,大家这动态数据就取了,其实这里边还有一个动态数据,哪一个呢?对阶段交易的阶段这个下拉列表,下拉列表数据是不是应该从数就应该从那个什么数据字典值那个表里边取啊。那你要取的话,那你这个地方得先查出来,放到作用率里边再做从作用率里边去取的,所以说大家我们这个流程应该说什么,在哪查,在CTR里边是不是还得查那个数据啊,查所有的阶段,按理说这那刚才我们这个地方分析的时候,把它给落下了,把它落下了,你这个流程就没画好。对白化了是吗?那怎么办呢?对再改是吧,所以那这那没办法,那你分析的时候没分析好,那你再再改再改你就麻烦了,那我我们给他改一下吧,那这么改一下,你看,然后呢,那这个地方往后往后拖。
32:01
他要再调用了调数据资产值的service位值,去查所有的阶段是不是这样吧,那调数据资产值的service位这个加一个数据资产值的。他加的话,你看他按顺序加到加到后边了,那怎么办呢?这个地方它就加错误了,知然后呢,这个地方叫数据资产知道那个叫take value6知道吧,然后呢,这个地方好。然后呢,这个CTRL这知道吗?在跳转页面之前先掉它,掉它怎么办?这个东西调过来,这个东西调过来。然后呢,大家这个地方调过了,调它的哪一个方法,咱们以前这个方法已经写过了,哪一个呢?Query叫dictionary value,根据什么去查y type裤子,嗯,Type裤子这里边穿个值,就是那个type裤子。交易阶段的太不够的叫着了了,对,叫做stage。然后呢,再看那他去调map,调数据资源值,Map这个地方拿后拿过来个数据资源,知道map。
33:05
刚才没设计好,知道吧,然后呢,调这个数据的量,直到map,我们把它叫做叫diction value6map,知道吧,然后呢,大看这个地方调过来就行了,然后呢,调过来这个地方来把它调过来,这里边也有方法,咱们以前学过了select第一个Y6,然后呢BY太够。这些方法都已经已经写过了,传来有参数,这个参数是这个。他去执行搜Q语句查询交易的阶段,执行SQL语句来查询交易的阶段。然后执行完了之后,把执行的结果往回发。那交易的阶段有多个,每一个分成一个实体类,实体类对象第一个是法就是多个是个list,知道吧,那我们这个地方大概我们为了建明之一这个list我叫list。
34:00
然后呢,把这个list继续往后发,谁掉了返回谁来一个stage。然后呢,在我们这个地方来拿过了他行,然后呢,这些大看这个地方都这个看,还有什么看看这个流程我们就改造好了。所以你这样一旦改造的话,就很就很浪很浪费时间了。很麻烦了,所以在设计的时候呢,我们说这个需求就要读好,它读好才行,要不读好的话,一旦改了就很麻烦了。好,那这样的话,根据这个设计,应该这个CTRL再调这个service,这service map都已经写过了,让往来写哈,然后呢,在这个CTRL边再调调谁调数据四点直导service斯,数据四点直导service斯叫这个线段Y6SERVICE斯。然后呢,调刻的方法叫query,这个value在这边传一个叫stage,然后呢,大家看这个地方来得到一个例子。这个list里边是一个第一个先value,然后呢,这里边我们把它叫stage啊叫stage。
35:06
嗯,叫stage list这样就行了,然后把它也得放到作误语里边,Request叫set tribute,然后呢,大家看这是stage stage,然后大家看在这个页面上面,在这个什么叫线索转换这个页面上法这里边数据就可以从作用里边取了。那取的话,我们的便利那个离子了,那便历离子那个负一指标签,因为要便利作用域里边的数据得用GSTL标签了,来一个叫for each叫,然后呢,在这里边去遍利遍利Dollar for,对叫stage list,这里边来一个循环变量,这循环你随便起了啊,我也叫S了。然后在这里边再看,每变出来一个阶段显示一个option,在这option里边给用户看叫阶段的什么对VALUE6名字,这个真正提到后台的对是我们真正什么需要获得是选中的那个option的这个VALUE6属性值,这是最大ID知这样的话大看我们这一个是吧,页面我们就行,完了这个页面就行了。
36:26
这些动态数据全都写完了,这个我们到下次才做好,好这样的话,大们这个页面我们已经写完了,通过ER表格GSTL从作文中获取数据并且显示出来了,大家看我说那这个什么,这个流程来看的话,前台这个页面就行了,下边只需要什么,发个请求是不是就可以了,对发个请求。那什么时候发请求,当用户在明细页面上面。一点转换按钮就发进去了,所以下边我们要做的事就是给这个转换按钮加个单击时间就行了。那这样加一个单击时间吧,那在哪啊,大家在明细页面上面,上面有个转换按钮,转换按钮大家可以搜一下,那么这个大哥转换对就这个。
37:11
给他加一个单心事件,他这个加单心事件是不是每公里给我们加上了知好看,当然我们说我们不推荐用这种方式,这种方式把GS代码和ATM代码混在一起了,我们在入口的时候统一讲啊。然后呢,这里边儿呢,我们给他加一个ID,这个ID来一个叫。Convert,然后呢可录button权叫线索转换的一个按钮,然后呢大家我们给它加单击事件,加单击事件,我们再入口行里边统一加,这再继续来给转换上去添加单击事件,单击事件,然后呢Dollar符号来选中它单击事件加雷,然后呢他一点那个转换按钮,自动触发我们这个函数。
38:08
在我们这个函数里边干什么事?对是不是什么,发个同步请求啊,发送同步请求,发送同步请求。在GS里边发送通风请求咋发?Window,对window location是吗?这为什么window location我们前面给大家说了,从那么客户端向后台发同步有三种途径,地址栏、超级链接、form表单,这里边有没有超级链接?没有,有没有方表达,没有,只能通过地理栏放了,那地栏在哪呢?对Windows表示什么?整个窗口?整个窗户地址栏是谁呀?对location location里边那个地那个地址那个UR是啥?H hif给他附一个值,跟你在地址栏那个UR,那个地址栏上面敲一个UR,一敲回这效果完全一样,那他敲到这个UR叫什么?
39:17
是不是就这个给你说说,把它拿过来就行了,我们要什么向后台带一个参数,怎么带对问号通过地址栏向后的带参数。发参参数名ID值叫什么?值是谁?从哪取啊?对,是不是从作用率里边取啊,你要记住当年在明细页面上面呢,明细页面作用率里边是不是有一个可录啊,从可录里边取就行了,那怎么取?到了时候一表达式直接取就行了,那么一表达式老师达式吗?放在引号,这不放在引号里边吗?这就放在引吗?
40:01
但你也可以这么取,大哥,对是收集参数怎么取,定个变量叫什么ID,它的值从哪取对多容易里边取可录点ID吗?知道吗?它是个字符串,然后呢,获取到之后,这个变量是不是追加到后边就可以了啊,追加到后边怎么追加对加它就行,道理一样的啊,道理一样。所以这是我们说的这个发请求也发好了,那发完了之后,整个流程就做完了,前台后台都做完了,下边我们就可以测一测了,来启动服务测一测。对,这是这个流程。这个流程稍微简单一点啊。当然那个保存转换数据的时候就太复杂了,就现在这只只是一个前奏,懂吗?
41:04
好,然后呢,这个地方来一个张三YF123点进来,然后呢,线索查看线索明细,我发现这个线索有购买意向了,那我就这么转换了一点它那上就跳转了转换页面,在转换页面上面显示这一个线索最详细的信息。我不是最详细的,就是关键信息了,大家看,包括大家看,如果需要创建交易点开之后,大家这些是我们这个动态的数据啊,这也是动态数据。这样的话,他就来到这个线索转换页面了,那来到线索转换页面之后,我们下次课的主要功能主要是在这个页面上来展开了,那这个页面干什么?首先我们下次首先做的就是市场活动员的可搜索。这个地方大家看看到时候怎么做,其实这个地方跟我们前面做线索关联市场活动是不是很类似,肯定自己可以先尝试着做一做,他的需求就是你可以搜出来,搜出来之后呢,给这些加上单击事件。
42:05
选中任何一个,把这个市场活动的名字显示到这个框里,ID显示到一个隐藏域里边,然后把这个搜索这个摩擦窗口关掉。知道吗?这样用户就可以了,下次我们就做这个,做完这个一点转换。那么真正要保存转换数据了,操作那十几张表了吧?好,这是我们大概我们说这个线索转换的这个功能,我们就。暂时先做到这个,先做这一个流程,好,明天我们接着做吧,好,那明天周日我们给大家补上一次的,给家请假,那一个那一次课啊,明天我们接着上课,好,那我们今天到这吧,咱下课吧。好,然后我们还是再来接着做我们这个线索转换啊,这个功能,这个功能我们上次已经做到这儿了,说用户在线索明细页面上边,他想转换线索啊,他想转换线索一点,转换时能够跳转线索转换页面,就是他能够看到这个,能看到这个页面,但这个页面上面这些动态数据的上,这些动态数据都有,都写成了知道吗。
43:13
好,下边我们就在这个页面上做相关功能,那做什么样的功能,在这个页面有一个这个,他说如果需要创建交易,那这用户填表单,填表单的时候,他说这个地方有这个地方有个特殊要求,说这个么,市场活动员给一笔交易,要指定一个市场活动员,那指定一场市场活动表示用户是吧,他参加过哪一个哪一场市场活动之后决定购买这笔交易。要给他指定一个市场活动去给这笔交易,知道吗?这时候我们要这样,那指定一张市场活动干什么,就指定那个市场活动存到这个交易表里边,交易表里边有个字段,哪一个字段呢?就这个交易表,咱这个交易表它里边有个字段,哪一个呢?就这个叫activity ID。
44:04
哎,可特就这个,他要保存一个一条市场活动的ID,表示这笔交易知道吧,创建的时候用户表示参加过哪一场活动之后决定购买的是吧,他记录他之后以后什么好统计,就什么样的可以统计出来什么样的市场活动产生的交易最多,那么将来他有什么领导做可以做出这些决策,以后多安排一些这些活动,就这个意思,要指定一场市场活动去。这是我们这个地方啊,那他说这个地方要做做成可搜索的,怎么可搜索,我们一会儿给大家看看他这个需求啊,怎么可搜索,知道吧,好,这是我们说,那你说老师这个什么,这个我们必须要做吗?不是说不是说用户啊,创建交易的时候才做这个功能吗。当然我说是用户创建交易才多了,但是对我们程序员而言的话,他即使说他只创建一次你这个功能你也得写知道吗?所以哪怕他什么平时大部分情况都不需要创新,但是对我们而言,这些功能,他哪怕他就他只创建一次交易,你也得把这个功能做出来,知道吗?
45:08
只不过用户不一定是吧,他不一定调这个,但你得写代码,你得写就这个意思知道吧,好下边我们就准备这来做这个市场网络运营单可搜索啊,来做这个功能,那做这个功能到底做成什么样子的,我们说它是可搜索的,可搜索的就这它类似于我们那个线索关联市场活动这个功能啊,类似于呢,他做成什么样的市场所给这个市场给这笔交易买多少钱呢?交易的名字是什么,预计什么时间成交,然后呢,这些阶段都选了,选了之后要给这笔交易指定一场市场活动,指定哪一场市场活动,这个地方让他自己想的话,他想不起来,那干嘛,你点这个,这是搜索按钮,你点它弹出一个搜索到市场文的模特窗口,在这模特窗口上有一个搜索框,在这输入关键字,每次键盘弹起。到后台去查询,根据名称去查询市场活动,去把名字里边含有这个关键字的市场活动全查出来,动态的列了下来。
46:08
列在下边怎么了,那用户可以就选一个了,列的候就选一个这个这个选的时候大家要注意,他跟我们以前线索关联市场活动不一样,线索关联市场活动呢,是不是对多选它可以选多个拆boss,他这个地方只能选一个,你知道吗。知道吧,那他只能选一个,他选完之后跟我们以前也不一样,以前多选选多个,然后选完之后一点关联按钮向后的吧钮,现在呢,选完之后他只能单选,选完之后呢,不用什么向后台发请求干什么呢?拿到这条市场上的名字和ID名字干什么,写到这个框里边,ID写到一个隐藏域里边,然后把那模大框文关了,关了之后呢,让用户就选了一个是市场活动,选完之后一点转换好了,把这些信息,包括这个市场活动员的信息都提交到后台去转换去了,转换了之后,如果他填了需要创建交易,往交易表加记录,把这些数据都加走。
47:07
交易表落了知道吧,这当然如果说他是么,如果不需要创新,那这个表就不用不用管了,知道吧,就这个意思知道,所以这是他这个大概这个需求就这样,那对于我们做的话就是那肯定做的话,给他加单机事件一点它弹出来窗口,然后用户在这去搜加一个键盘弹机事件,每次是吧,键盘弹起想获得发流去查,查出来之后列到下边,列到下边之后给这些按钮也都得加上单机时间,当用户1.1个拿到这一条市场活动的ID和名字,然后呢,把它关了,名字显的这ID写到隐同域里,这样的话,我们这个市场活动员可搜索就多了,知道吧。这时候我们大概是做成账目懂好大家对这种需求有个大概了解之后了,下边我们一块来看一看这样一个市场活动源的可搜索到底怎么来去做,那我们这个流程还是画到我们这个流程上了,现在这个流程呢?现在这个流程现在我们已经来到来到这个页面上面了,来到这个页面线索转换页面了,那假如说他需要创建交易,那就用户就点开它了,点开它点开完了之后,这些输输出这些都好办,主要是当用户是么选择市场会源的时候,他一点它。
48:19
我们主要是做这个功能的,然后弹出不大窗户,这个流程就发起了,所以我们来做这发这个流程知道吗。
我来说两句