00:00
许可我们已经分配完了,但是我们分配完了还不行,为什么呢?大家看,如果现在呀,我们这么来写index。我现在啊,准备给项目经理呢,我们再来分配,我们刚才看到了,我们现在数据库里面其实已经有四条数据了,就说明我们曾经给这个项目经理啊分配过我们的权限,那我再来点。点完之后大家看。有吗?没有,那就说明你之前分配的数据我并没有回显出来,那我就以为还没分配过,那就麻烦了,为什么你就得做重复性的操作了,所以在这种情况下,我们希望跳转到这个页面的话,如果你曾经分配过,那你就给我勾选上。那这个我们该如何来做呢?这里我们首先说一下如何能够把它勾上啊,这个事儿我们先说一下,在我们文档当中,咱们往上来看,大家看我们的chino的节点,它的接数据当中除了那个open以外,还有一个checked,也是布尔类型的,这个checked就表述的是它的勾选状态,如果是true就是勾上,如果是false就是取消,所以我们完全可以在我们的permission当中把这个给它加上。
01:25
所以啊,我们除了它以外,还有一个咱们叫类型的啊,咱们叫check,嗯,好等于false,就是默认呢,是没有被勾选的啊,咱们这这样做,那什么时候它是勾选的呢?所以啊,我们这里来看一看啊,来点击OK,嗯。那么也就意味着在我们去展现分配数据的时候,我们这个数据啊,在读取我们节点数据的时候啊,你这么写有点不对了,为什么?因为我们有些是要勾选的,但你这个肯定是没有这个操作的,所以啊,我们这里来给它变一下啊,我们这么来写,所以把它拿过来叫permission。
02:12
在permission当中,我们把它拿过来啊,Permission我们要查询数据,诶在我们这个位置来,我们放到这,然后把它原封不动拷贝一遍。啊,拷贝一遍好,呃,拷贝一遍以后把它给它啊替换一下,嗯,好啊替换那替换以后,那里面的这些内容我们应该是大同小异的,所以把它拷贝过来啊,咱们之前做了很多的查询操作呀,嗯,然后呢,接着呢往下啊,我们把这个呢原封不动拷贝过来,这个代码之前都是验证过的,没有问题啊。好了,那这个数据呢,我们说啊,我们都是对的,可是呢,我们说了,你得要求哪些数据勾上,哪些数据不勾呢,对吧?诶这个我们得知道,那你要想知道哪些勾哪些不勾的话,你得知道我们当前的角色都已经分配过哪些权限。
03:15
所以啊,我们在这我们得写上啊,来写上叫获取当前的角色,他已经分配。的权限或者许可信息。那你要获取当前角色已经分配的许可信息,那我得知道角色在哪啊,所以说你应该把角色的ID给我传过来,咱们叫real ID,而这个real ID在我们跳转到这个页面的时候,其实是可以拿到的,咱们叫real ID,它等于我们叫per.ID这样的话,角色的ID其实你就拿到了,拿到了以后我根据它来查询我们的数据就可以了,所以我们的list啊,来,我们写上咱们叫promission ids,就是关系表当中的许可ID啊,我要取出来,所以我们写上咱们叫promis service dl pro promis ids,根据什么查,根据角色D来查,这个角色的ID我们已经有了,所以这么写就行了啊。
04:31
好,把它我们给它create啊,接下来我们再来增加它的实线,嗯,点,然后增加,增加完成以后,这里写上叫permission。然后把这个方法名我们拿到这里,然后我们的ID好把这个去掉,去掉以后点击小灯泡我们。
05:00
然后呢,接下来我们该查询了,这个也并不复杂,我们select。然后select,我们叫promis ID from啊,咱们的T_promis条件where,柔ID啊等于柔ID,嗯,可以了,那这么写完以后,我们的中间的关系表的数据我们取到了,那我怎么知道你是选中还是没选中呢?很简单,我们判断就行了,所以判断if。如果我们的这个集合当中,它包含了你当前的许可的ID,说明你在我的关系表里面,那我就需要把你的那个选中状态给它勾上,所以我们p.set check啊,等于true,否则else你就不是选中的,所以我们set checked给了个false就可以了啊。
06:02
所以我们把代码呢,给它稍微的变一变,来回显我们的数据,好把它停掉。停掉以后再给它来启动。好了,现在已经启动完了,那么我们接下来我们就可以来看一看了,好,那我们首先还是回到它的index啊,来回车,回车以后,那现在我还是想对项目经理进行我们分配权限,所以点击它点击点击之后大家看一下是不是四个节点被勾选了,这个是没错的,它跟我们数据库当中的数据其实是对应上的。好了,这个功能我们算是做完了。
我来说两句