您的位置:首页 > 教育 > 培训 > 深圳营销型网站哪家好_无广告免费追剧软件_今日国内最新新闻_推广方案如何写

深圳营销型网站哪家好_无广告免费追剧软件_今日国内最新新闻_推广方案如何写

2024/10/5 19:18:40 来源:https://blog.csdn.net/x18094/article/details/142312114  浏览:    关键词:深圳营销型网站哪家好_无广告免费追剧软件_今日国内最新新闻_推广方案如何写
深圳营销型网站哪家好_无广告免费追剧软件_今日国内最新新闻_推广方案如何写

待办列表可以用 taskService.createTaskQuery()

但是已办列表就比较麻烦了。为什么呢?直接查询act_hi_procinst是不行的,已办要查询每个环节是否有当前登录工号处理过的记录,那这个记录是在act_hi_taskinst里的。

方式一:left join (不满足分页要求)

select * from act_hi_procinst left join act_hi_taskinst on ahp.PROC_INST_ID_ =aht.PROC_INST_ID_  

这样写是没问题的,但是列表这东西不可能说不分页,一分页,由于它们是一对多的关系,因此就会出现一页中条数变少的问题,这个大家都懂,不懂的去补一下知识。

方式二:mybatis collection子查询 (不满足处理人条件过滤)

collection子查询是先查询主表,再根据主表查询结果再去查子表,因此现在子表act_hi_taskinst要过滤处理人条件,无法实现。

方式三:最终方案

select aa.NAME_  as '当前环节',aa.ASSIGNEE_ as '当前环节处理人',aa.START_TIME_ as '当前环节到达时间' ,aa.end_time_,ahp.*
from act_hi_procinst ahp 
left join(
select aht.* from act_hi_taskinst aht where aht.START_TIME_ in(
select max(aht1.START_TIME_) from act_hi_taskinst aht1 where aht1.PROC_INST_ID_ in(
select   PROC_INST_ID_   from act_hi_taskinst aht2 where aht2.ASSIGNEE_ ='张三')group by aht1.PROC_INST_ID_)
) aa  on ahp.PROC_INST_ID_ =aa.PROC_INST_ID_
order by aa.START_TIME_ desc;

不是说查询“张三”的已办列表么,怎么有一个李四啊?

正常,张三前一个环节办过,所以这个任务也就算张三的已办了,现在是李四的环节。为什么更好的展示当前流程走到哪个环节了,所以处理人显示的是李四。 

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com