00:00
呃,来吧,各位同学,那再往后呢,咱们来看一下这张表的这个这个表结构的一个设计啊,首先先明确一下它的表名,这个表名叫做交易欲退款成功事物十秒,那实际上这个退款成功与我们前面那个支付成功,其实应该是有点类似的,对不对,只不过呢,就是支付咱是谁给谁付钱呢?是用户给商家付钱对吧?那退款呢,相当于反过来了,是不是我们这个商家给用户付钱啊,相当于是对不对,其实他俩这个表结构啊,包括数据装载的逻辑啊,都差不太多啊好,那接下来呢,我们就来先熟悉一下它的表结构,那我们还是按照之前的那个设计步骤去走一遍啊来,首先我们打开这个总线矩阵,那我们现在先来看一下它对应的业务过程是就是退款成功好了,那接下来我们往后走啊,呃,首先需要明确的一点就是那这张表的力度将来应该是什么样的。力度仍然是一行代表一次退款成功的操作,对吧?那我们需要明确的一点是什么呢?需要明确的一点是什么呢?就是你得精确到啥程度,得精确到是谁对不对,OK,在什么时候对吧?退款成功了是不是哪一件商品啊,对吧,咱也得精确到这个程度才可以啊,这一点要往清楚行了,那接下来我们继续往后看,那行明确了,接下来就是看列,列还是分为维度加度量,咱先看维度啊,那维度这边呢,来看一看它的这个维度跟我们上边的这个支付是不是很像啊对吧?你看看OK,那首先支付前面呢,有时间用户商品地区,那我这边退款呢,也有时间用户商品地区,那OK后边那呃支付成功是不是会有一个支付方式,那我退款成功是不是也有一个支付方式啊,对吧?诶这一点要给他搞清楚好了,那现在字段,呃,这个维度字段基本上就明确下来了,明呃,维度完之后呢,我们看最后一个度量值,度量值其实相对也比较简单,来我们看一下,一共主要有两个度量值,分别是退款成功的件数,还有退款成功的金额,好了那行利基本上就OK了,最后我们来看。
01:58
看一下他建表语句啊来拿过来,我们一起看一下,把这个建表语句看完,咱们就下课休息会儿啊来拿过来来吧,那现在呢,首先我们先来简单的看一看它的这个表名,呃,这个表名呢,其实相对也比较简单,呃,首先数据域这个不多说,然后呢是refund pay success,是不是也得是退款成功的呀,对吧?退强调是成功,然后INC是它的增量标识啊好,那就来往后看,下面呢,就是这张表的具体的这个表结构了啊,行列分区先看行啊行呢,首先刚才已经说过了,我们应该得精确到什么程度来着,是谁对吧?在什么时候退款成功了哪件商品对吧?那简单的看一看这里边是谁对不对,在什么时候对吧,退款成功了哪件商品对不对,应该是能够体现出来了,好,那进来我们再来看它具体的字段都有啥啊,字段还是分两部分看就行,一个是维度,一个是度量,那首先先看维度啊,维度首先第一个用户ID,这个不多说,然后呢是商品ID,这个也不多说,然后往下走pro ID,地区ID。
02:58
然后这个是什么呀?这个应该是我们做的一个维度退化吧,对吧?会话进来的那个支付类型啊,这个很简单,然后往下走,下边呢是备台ID,也就是那个日期或叫时间ID嘛,对吧?那再往下是一个call back time,也就是支付成功的时间,OK啊好了,那这其实就是咱们所要的维度,那最后呢,这个就是度量对吧,退款的件数和兑换的金额行列就都完事了,分区呢,还是那种普通的增量分区的一个规划,对不对?这就不用多说了啊好了,表结构那就OK了,来视频我给他停一下。
03:28
好了,各位同学,那咱接下来看一下退退款成功这个事务实时表对不对?它的数据状态咱应该怎么做?还是老规矩啊,咱们先去分析分析对吧?就是咱们要往这张表里装载数据,咱应该从哪去取顺对吧?数据的流向先搞清楚从哪取数啊。是不是还是得分析分析退款成功会对谁产生影响啊,对吧,大家说退款成功会对谁产生影响。对谁,Older info会不会受到影响,显然也是会受到影响的,对不对,退款成功的话,那older info当中的older Li它的一个订单状态会变成什么?会变成那个最后的状态1006吧,对不对,这个是不是就是退款完成啊,对吧?诶这个肯定是会受到变化的啊,但是呢,我们从这儿找其实也不合适,为啥?因为你从这儿找只能找到order info对不对,但是我们要的是什么力度呢?得到商品力度对吧?那么说你是不是又会想到用它去关联订单明细啊,对吧,那这个能行得通吗?行不通对不对,因为我们退单的时候,对吧,或者退款的时候我可能退的不是整个订单,我只退了一个或者是两个明细,对不对,那你直接这么关联上,那那就会误伤,相当于是啊,这个不行,那所以我们还得换一种思路,那咱们应该从哪儿去找这个退款成功的操作记录呢?
04:44
诶,有一张表叫做refund payment对吧,这张表其实就是我们要找的那张表,OK,那接下来呢,我们还是老规矩,先来熟悉熟悉这张表的表结构,然后呢,再去熟悉它的变化的逻辑啊好,先熟悉它的表结构,来简单的看一看,这样其实说实话也不难啊,这边也相对比较简单,首先先明确一下它每行指来的是什么。
05:04
其实这张表呢,它每行所指代的恰好就是什么,就是一个订单当中的一个商品的一个退款记录。啊,这这张表其实它每行数就代表的就是这个含义,对不对,那我们这儿要的就是什么,我们想要的是不是就是谁在什么时候退款成功了哪个商品啊对吧?所以说实际上这张表的力度跟我们这张事实表的力度是不是基本上是一致的呀,对吧?是一致的,这个大家应该能想明白了啊,它这儿本身就是精确到订单里边的一个商品了啊好了,接下来,接下来呢,我们继续往后看,我们行基本上明确了,然后再看一看它的具体的字段都有啥啊,首先呢,第一个OID,第二个商品ID,这个不多说,然后第三一个呢,是支付的类型payment type,像这个支这个支付的类型,或者叫做退款的类型,跟刚刚我们在那个支付那张表当中,也就是payment那份这pay payment那份那张表当中那个支付类型应该是同一个概念吧,对不对?你看啊,这儿是幺幺开头的,你这张表当中那个支付的类型其实也是幺摇开头的,它俩是一个概念啊,这个咱不多说,然后继续往后看,呃,后边呢,这儿有一个total amount,这个指的是什么呀,是不是就是退款的总金。
06:16
压对吧,诶这个也比较简单,不多说,然后往后看后边这个字段呢,有一个叫做refund status的一个字段,这个refund status它指的是什么呀?叫做退款的状态吧,应该是没问题吧,OK,这个退款的状态理论上它应跟谁是一致的呢?应该跟这个payment in for这张表当中的谁。Payment CS支付的状态应该是一致的,诶是这样的,也就是你退款的流程对不对,跟我们支付的那个流程其实是一样的,他也得怎么样呢?也得先去调用是不是第三方的这个支付接口,对吧?那完之后呢,是不是得收到它的回调等等等,是不是也是这样一个流程啊,对不对,那所以说你支付的时候会有160116021603这样的三个状态,那咱退款的时候同样会有这样的三个状态,所以说理论上这个字段跟刚才那个是一样的,但是大家应该能看到啊,这个字段咱们下边存的值是16011602103吗?并不是,对不对,他这存的是啥呀?它存错了,它存成什么了呀?它存成那个退单状态了吧,对吧,这个零七开头的,我们之前看过,它应该代表的是那个,呃,是不是退单的状态啊,对吧?诶什么这个商家审核中什么审核未通过,是不是存的是这个东西啊对不对,所以说显然这个数据它这是有问题的啊,有问题,所以这块呢,大家稍微再理解一下啊,这块应当是那个1602101103,跟那个支付的状态是一样。
07:39
那所以说一会儿我们要是从这张表里取数的时候啊,假如说我们需要用到这个字段去过滤,那咱是不是可能会拿不到数据啊,对不对,这个大家要稍微的注意一下啊,那一会儿我们怎么去做呢?数据有问题,它有问题就有问题,咱就不管它了,然后呢,我们保证自己写的那个circle逻辑是对的就行啊,顶多就是我们circle写完查数据查不出来对不对,这个也算是正常的,这个稍微的理解一下啊,行了,那这个完成之后,我们继续往后看,那后边这仨字段大家应该就已经很熟悉了吧,对不对,是不是,就是哎,Cur time call back time,还有一个call back content,对吧?那这个呢,在这儿呢,它其实也是模拟生成数据的问题啊,它并没有给我们加上这个回调的内容,理论上这个回调的内容肯定是会有的啊,这个大家理解一下就行了,好了,那截止到现在呢,那这张表的行还有列,咱们基本上就要诶认识的差不多了,那接下来呢,我们来分析分析,就是这张表的一个变化逻辑对不对,咱得知道我们要想要找的那个退款成功的操作,对吧?是如何影响到这张表,分析分析吧,大家说退款成功应该是如何对这张表产生影响。
08:39
怎么,那实际上呢,退款成功对这上面的影响逻辑和支付对payment in for这上面的影响逻辑是不是应该是大致是相同的,对不对?OK啊好,那下来呢,我还是以一个完整的退款操作流程为例,给大家去演示一下,就是这张面的数据到底会怎样发生变化,OK,那接下来首先我们先来明确一点,就是假如说现在有一个商家对不对,他接收到了一个退款的货物对不对,接收到这个货物了,那这个货物呢,完事检查之后没有任何问题,他肯定会怎么样啊,会点击那个同意退款对吧?那我们正常每一个商家,他他会有一个自己的后台管理系统的啊,OK,他会点击同意退款对不对?OK,那只要他点击同意退款,那你想一想,咱们这张表的数据就会发生什么样的变化。
09:25
是新增一条还是修改一条?点击同意退款了,点击同意款真真的退了吗?现在并没有,你得他是不是得后得得去调用第三方的支付接口才能退啊,对吧,那是这样的,OK,那所以在这边正常他这应该会发生什么样的变化呀,其实就是插入一条数据对吧?商家点击同意退款,就好比是什么呢?好比我们用户在下单的时候,你点一下那个支付对不对一样的道理啊,所以商家点击同意退款,OK,那这块呢,我就会插入一条数据,当这个数据刚插入进来,应该是什么样的呢?呃,首先呢,这个状态它正确的状态应该是什么?应该是那个幺六是不是零幺的状态,对吧,相当于是是待支付的一个状态,OK,那接下来呢,我们继续往后看,那create time有没有值呢?应该是有值的,但是后边的call back time call back content刚进来的时候是不是应该是空的呀,对吧?好,那完了之后我们就往下走,那商家点了读立退款之后,那我们的系统呢,就会调用第三方的这个退款的这个这个这个支付的接口,OK,那商家完成这个最终的退款支付之后,那这边是不是就会回调咱们的系统啊,对吧?OK,那只要一回调我们。
10:29
的系统,那咱们这儿是不是就会拿到它的回调信息之后呢,我们就会在这里边写入回调时间,写回调内容,并且根据回调内容去修改这个最终的退款状态,对吧?那如果退款成功了,这儿就会变成1602,如果退款失败就会变成1603啊这个要理解一下,这是咱们这张表的一个变化逻辑,所以说根据我们刚才的描述呢,大家应该能够感觉出来,就是退款成功对这张表的影响逻辑应该是什么?应该是修改一条数据,并且修改的字段是refund status,并且改完之后的值应该是1602才对,没问题吧,跟那个支付其实是类似的啊好了,那这个大致的一个银行逻辑咱们也就分析完完完毕了啊好了,那接下来呢,我们就继续往下进行,那下边咱们要思考的问题应该是什么呢?啊,对不对,就是我们,诶首日的时候,我怎样从这张表里找到历史的退款成功的操作对不对,每日的时候如何找到当天的退款成功的操作对不对,还是这个逻辑吧。
11:29
对吧,先说首日,首日我们怎样从这张表里找到退款的这个成功的操作呀,怎么找啊。其实很简单,我们这张表当中一行其实就能够代表一次退款操作,对吧?但是这个到底有没有成功,这个得取决于谁,得取决于我们这个退款的最终的状态吧,是不是也就是refunds,对吧?如果这个退款的最终状态它是一个诶1602对不对,那他是不是应该就会对应一个真正的退款成功的操作呀,对吧?啊,如果不是,那就那就不行了,所以说我们首纹的时候呢,应该怎么办?是不是应该从这张表里拿数据,然后呢,做一个简单的过滤,Refund c等于1602就可以了,对吧?当然针对于咱们目前这个数据而言呢,我们这么去过滤肯定是拿不到东西的,拿不到我们这个circle号也得那么写,得保证自己的逻辑是对的啊,数据有问题咱不用管啊,好了,那这个是首日,那每日咱怎么找呢?每日拿到的是不是就是insert和update操作了,我们只需要拿什么样的就行,Up date类型的操作,并且得保证修改的字段是这个修改之后的值得是1002实不应该是这样一个逻辑啊,对不对,那首日和每日的装载逻辑咱们基本上。
12:36
就OK了,好,那接下来呢,我们要做的工作就是把这个circle课呢给他看一下就行了,这个circle课我们就不用再一点点去写了啊,我们看一下文档里边怎么写的就行了,来,视频我先停一下啊好了,各位同学,那咱接下来呢,要做的工作就是去干啥呢?来,去看一下这个最终的数据装载语句,首先我们先看它的首日装载,呃,这个我就不在一点写了啊,我直接把它拿出来,咱一起看一下就行,先看他的首日来吧,我们看看他这儿是怎么去做的啊来,咱们现在还是先从紫查询开始看起啊,就是咱看别人写词和他自己写词也是一样的,哎,就是先从子查询看啊,OK,我们先看他的第一个子查询,看一下他第一个子查询是怎么写的啊,首先是s select的from那张表是不是就是payment,呃,Refund payment那张表啊,对不对,完之后呢,找到十字号分区,然后这个做一个简单的过滤之后,找到谁,找到最终的汇款状态是1602的对不对,这就是历史上的所有的退款成功的这个操作记录,OK,那当然了,这个三咱们直接一查的话,肯定会怎么样,肯定会诶这个没出。
13:36
据对不对,这个是正常的,因为咱们数据有问题嘛,OK啊好,那既然这儿要是没数据,那下边是不是都跟上边做left状态,对吧,那说最终的结果会有数据嘛,肯定没有啊,他是不是最最终是以第一个子查询为准啊,对吧,这没有下边肯定不管有没有都是没没结果的,因为是left,这个理解一下啊,所以最终咱这张表里边啊,你是没数据的,这个是正常的啊,就是大家如果查自己的表诶,发现这个没数据,这个是正常的,哪个表我强调一下是退款成功,那张表是没数据的啊,这个理解一下,好,我们继续往下走。
14:08
看第二一个紫查群,第二个自查群,你看他这是从哪张表取的分,从哪张表里取的,哎,是从older info那张表里取的,这个主要是为了拿谁呀?是不是还是为了拿那个UID跟pronce ID对吧?OK,在这儿他拿到的相当是所有的历史的订单,OK,那完之后呢,这是什么?这是所有的是不是退款成功的操作对不对?完了之后呢?诶,他俩做一个left,最终的结果呢,是以他为准,OK,那接下来我们继续往下看,注意观察各位同学,你看他还撞唤谁了?这边他还照谁,是不是他又join了一个order refund的in啊对吧,又照了一个退单表,诶,他这为什么要去join一个退单表呢。这里边儿我告诉大家主要是因为什么啊,是因为咱们这张表里啊,这个退款表里,它只有一个退款的金额,对不对,咱们看一下这个原表啊,诶在这张表当中是不是只有一个退款的金额呀,对吧,他有那个退款的基数吗?
15:05
没有对不对,没有退款件数,那咱们就得从哪去找那个件数,诶咱们知道退单表里边是不是存储了,或者是记住那个退单的件数啊,对吧?所以在这儿我们的想法就是啥呢?是不是去找到这个退款记录所对应的那个退单记录,进而是不是能拿到那个退单的或叫做退款的件数啊,对吧,是这样的,所以在这儿呢,我们是诶让这张表跟下边的退单表又去做了一个,诶join操作好,那现在我问一下一个问题啊,你说用退款表跟退单表去做join的时候,咱们的连接条件应该用谁?对不对,咱是不是得必须得保证,就是我的同一个退款记录,得跟他与与之对应的那个退单记录是不是得关联在一起才行,对不对,那咱用谁作为关联条件呢?再琢磨琢磨,你说应该用谁去作为管理条件,这个是退款表啊,OK,那再找一下那个退单表,应该是order refund for应该在这儿,这是那个退单表,你说这两张表我用哪一个字段作为关联条件比较合适,大家琢磨琢磨,你说用谁作为关联字段比较合适?
16:11
用order ID行不行?行不行?行不行?行行吗?行不行,分析分析啊,你得保证啥啊,就是咱必须得保证,就是我的这个退款记录,得找到与之对应的那个退单记录才行,对不对,OK啊,那到底怎么找到。你要知道就是咱这张表里一行数据代表的是什么,是一个订单下边的一个商品的是不是退款记录对不对,那这个退单表里边呢,代表的是不是就是一个订单下边的一个商品的退单记录啊,对不对?所以说我要保证能够一一对应上,那应该用谁做关理条件视频验证他俩作为关理条件对不对?你得保证同一个订单里边的同一个商品项,它的订单和它的退单和退款是不是得关联在一起才行,对不对?所以咱的关联条件呢,应该是这两啊,一个是O的ID,一个是SKUID,这个一定要稍微的注意一下啊,所以说大家来看一下咱这个查询怎么写的,呃,这边我们拿到了refund number对不对?然后其次呢,是不是也拿到了ID和商品ID啊,对不对,它主要就是作为关联条件的,这个一定要注意啊,好了,那这个第三个去咱也就OK了,他OK之后我们继续往下走,下边其实就拿了一个简单的编码,这个就不再多说了,那完成之后在这儿我们是不是需要诶做一个left对吧,最终拿到所有的退款成功的操作记录,那最后呢,我们再把它使用这个动态分区。
17:30
把数据写到咱们最终的这张表当中,当然呢,动态分区自动的值,我们这儿用的是谁,是不是也是这个call back time对吧?那实际上呢,对于退款成功而言,那咱们的操作时间其实就是那个回调时间啊,OK,这个理解一下就行了,好了,那它的首日状态,那咱相当于就完成了,好完成之后我们紧接着我就不再单独录了啊,我们紧接着来看一下它的每日装载应该怎么做,呃,那在这儿呢,我们就不再去看问档的了,在这边呢,我们,呃,按照咱自己的理解,我们把这个首日给它拿出来,给它改一改,来看一下咱们这儿能不能改明白啊来拿过来,然后呢,各位同学我们一起来看一看他的每日状态,我们应该怎么去改啊,来看一下每日,每日咱们假定现在是不是就6月15号了呀,对吧?好来看一下怎么改,首先我们先从第一个自查群开始改。
18:17
这边怎么改?呃,这这这个子查询是不是来自于refund payment呀,对吧?那我们需要在这张表的一大堆的insert和update操作当中找到退款成功的操作,对吧?退款成功的操作应该是一个什么类型的操作?应该是一个update操作,对吧?所以首先在这呢,我们应该把它改成up data update没问题吧?好,那我们修改的逻辑是什么?首先得保证修改的字段是不是得有这个退款的状态,还得保证修改完之后的值得是1602才行,对吧?所以在这呢,我们只需要再补上一个是不是and,呃,AA,对吧,A RA contain里边的map是不是case啊,对吧,Mapp,然后这个ks map case,然后呢,把old放进去啊,之后呢,我们再判断里边有谁,是不是有咱们的这个,呃,Re found的status,那就完事了,对吧,OK,然后呢,再保证它修改之后的值,对于update类型呃而言,Date里边放的就是改之后的值,对吧,它得等102才行,OK,那这样一来咱就能拿到。
19:18
只五号这一天的退款成功的操作好,那这个搞定之后,我们继续往下走,看看这边再怎么改,诶这个改的是谁,改的是older info对吧?Older info这个怎么改。要知道怎么改还是老规矩,就是咱们得知道啊,就是我们跟他关联的目的是什么,为什么要跟他关联,是不是还是为了去找到,找到什么,就是上边的这些退款成功的操作所对应的订单呀,对吧,是不是进而拿到与之相对应的那个pro I Du的ID呀,对吧?这是咱们的目的。好了,现在问题来了,那怎么去找?哎,其实这个很简单,我们只需要保证咱们这个子查询它返回的结果里边包含了上述所有的退款成功的操作对应的那个订单就完事了,对不对?OK,好,那上述这个操作其实说白了就是15号的退款成功的操作,对吧?那是这样的,那我们每一个退款成功的操作,理论上都会导致我们这个order info发生一个update类型的变化吧,对不对,也就是我们都能找到一个与之对应的update操作的数据,没问题吧,好,那所以说在这儿呢,我们应该怎么改,是不是首先找到15号的数据对不对,然后类型的我们只需要用update类型的数据没。
20:31
问,对吧,但是呢,我们不能要所有的阿排队类型的操作,我们还得做进一步的过滤,是不是才可以,对不对,那这个进一步滤过应该应应该怎么过滤呢?怎么过滤是不是得取决于就是你汇款成功会对它造成什么影响,对吧?首先它会呃让这张表当中那个older standard发生变化对吧?而且它变化之后的值应该是什么来着,是最后那个1006的状态,是退款完成的状态吧,对不对?所以在这儿呢,你应该这么改,这儿呢,应该保证修改的字段是o status,并且改完之后的值得是一个1006的一个状态,没问题吧?好,那这样一来我们就找到了上边的退款成功的操作所对应的订单信息,好找到之后那这个pro ID他就能够拿到了啊,这个相对比较简单,来继续往下走,这还有一个查询。
21:18
这个查询是谁?是order refund info对吧?那这个我们又应该怎么摘,怎么怎么搞呢。这个应用怎么改啊,这个首先分区是不是可能也得改成15号啊,对吧?啊,那之后呢,类型改成什么类型。这个要是不知道怎么改呢,咱还是得自己分析啊,就是首先咱得知道,就是我之所以要跟退单表进行关联,是为了干什么。是为了拿到refund number对不对,没,没问题吧,OK啊好,那为了拿到谁的refund number呢?是为了拿到上边的这些退款成功的操作所对应的那个refund number,对吧?因为退款表里我是没有退款的件数了,没问题吧,所以说我们这儿必须得保证什么,你保证这样一点就行了,你得保证OK这个子查询它得能够返回,返回什么。
22:09
返回上边的那个15号的汇款成功的操作所对应的所的订单所所有的退单操作对不对啊,应该是这样一个逻辑吧,OK,好,那这个怎么去找。怎么去找?你得保证这个子查询得返回什么15号的退款成功的操作,对吧,所对应的退单操作才行,诶这个怎么去找啊,怎么去找哎。其实这个怎么找还是得分析分析,就是我这个退单成功啊,就这就是退款完成对不对,或者退款成功对不对,跟这个退单表的一个关系对不对,那大家琢磨琢磨,你说我退款成功的操作发生之后,那退单表会不会发生变化。退款成功啊,发生变化,那我的退单表会不会发生变化,会不会。
23:00
其实也会发生变化,来咱们去看一看它发生什么样的变化啊,我们找到那个所谓的order refund info来找到它,然后之后呢,这张表里边有一个有一个有一个字段啊,叫做什么字段来着,Refund status对不对,OK,那大家还记不记得这个字段里边都有啥状态啊,来找一下是不是里边会有什么各种什么商家审核,审核通过未通过等等的,最后一个一个什么是退单完成啊对,那你想一下,你说这个退单的记录,他的状态什么时候才会变成退单完成。是不是那边退款完成我这个退单的流程就算是走完了对不对,所以说一个退款完成的操作也会对应哦,这个退单表当中的一个update类型,Update类型的操作是这样的,所以在这儿呢,咱们就知道怎样去找上边的退款操作所对应的退单记录了啊这个应该是呃,应该是比较清楚的啊好,那首先我们需要先改成15,之后呢,在这儿呢,我们得怎么办顺得拿到update类型的这个操作呀,对吧?那之后呢,得保证本次修改的字段是谁来着,诶是那个re放的是不是C啊对吧?找一个re fund re放的tas,好,那完之后呢,得保到它改之后的值是多少呢?0705,诶那这样一来我们就能找到上面的退款操作所对应的退单记录了,诶,找到之后,那这个铝方的number咱就能拿到了,诶它是这样的一个关联关系啊好了,那这个完成之后,我们再往下走,下边这个地方是不是就简单了,只需要改一个日期,改成15,那就完事了,OK,那。
24:28
截止到现在呢,我们这张表的子查询就都改完了,改完之后最终我们需要把它的这个动态分区给它调整一下,这儿咱们不能要了,直接删除,那这个呢,DT应该是等于2020杠零六杠幺五,诶那就完成了啊,这是咱这张表的每日状态啊,行了,那这个完成之后,视频我给他停一下啊。
我来说两句