关于加一个字段这种,我前几篇文章已经写过了。这篇文章的这个需求,也是写关于加字段的,只不过与前两篇文章不一样的是,这篇文章的这个需求讲的比较隐晦,需求没有直接跟你说要你加一个字段,要你自己想一下才行。
这个需求描述和初衷是这样的:工人们希望在上报人员旁边加一个上报人员的电话号码。因为现在这里的上报人只有名字,没有电话。有时候那些工人想联系这个上报人员的时候,如果旁边有一个电话,那就会很方便。所以我们希望让上报人员的名字旁边加一个电话号码。
你看这个页面,肯定是有一个接口返回了这个页面的这些数据,然后前端使用这个接口的数据渲染到页面上被我们看到。那么,要想增加上报人员的电话号码,是不是应该找到这个接口,希望这个接口的返回参数多加一个上报人的电话,那就好了?yes!就是这样!就是加一个上报人电话号码的字段。
因为之前有过加字段的经验了,所以加个字段没什么难度。
首先我们找到这个页面的数据对应的接口:
进入后端,找到这个接口的controller层:
首先肯定是要在FaultReportPortalVO加一个reportPhone字段。
接着我们进入service层:
我发现service层中,返回值是page,page是FaultReportPortalVO类型的,page对象里的的数据是通过mapper层的portalList来查数据库得到值的,因此我们通过这行代码进入mapper层:
这个sql语句就是从数据库中查这些字段,然后将结果返回到FaultReportPortalVO中。现在,我们的目标就是在这里加一行语句,能够查出上报人的手机。
你要想,上报人手机号码这个字段怎么和fault_report这张表联系起来呢?
先看看fault_report这张表吧。
我发现上报人员的id和用户表中的id是一样的:
而用户表刚好有用户的电话号码!!!!!
所以说,我们可以给故障上报表和用户表做一个左级联,然后拿出上报人的手机号码!!!(通过上报人id关联到用户表,然后从用户表中查出用户的手机号)
那这个思路怎么写sql语句?我不会写sql语句啊呜呜呜!
别慌,原来还有gpt,gpt是无敌的。只要你把你的想法告诉gpt,他一定给你写出来,不用自己会写。因此,我把重任交给gpt:
结果他不负众望:
然后回去看看这个接口有没有返回reportPhone这个字段?显示出来了!
接下来进入到前端,找到渲染上报人名字的地方,然后照猫画虎来渲染上报人电话号码:
然后有reportName的地方就有reportPhone:
至此,这个需求就完成了。
其实你可以看到,这个需求的本质还是加字段。
如果你看过我前两篇文章,你就会发现,加字段其实思路大同小异。只要你把整个思路捋清楚了,接下来写代码其实就已经是没什么难度的,有难度的可以叫gpt来写。