Bug #171
Etiquetas
0%
Description
Como a etiqueta está atrelada a um caso, cada instituição só deveria ver as etiquetas relacionadas aos seus casos. Hoje a visão das etiquetas é geral, mesmo que não abram as que são relacionadas a outras casos de outras unidades.
Confunde muito e não dá a especificidade que queremos.
Se o usuário tem a visão somente da sua instituição, só deveria ver as etiquetas dos seus casos.
Se o usuário tiver a visão do Estado, vê as etiquetas de todos os casos do seu Estado, assim sucessivamente.
History
#1
Updated by Maurício Dos Santos over 12 years ago
- Tracker changed from Melhoria to Bug
- Status changed from New to In Progress
#2
Updated by Maurício Dos Santos over 12 years ago
- Status changed from In Progress to Feedback
Ricardo,
Analisei o problema e conclui que o sistema até distingue (ou tenta) a visão do usuario, porém no casesquery (quando exibe a lista de casos) a condição é uma (onde ele considera a unidade de notificação e a unidade dona do caso) e no casestatereport (onde ele gera a quantidade para varias situações, inclusive das tags) a condição é outra (onde ele considera somente a unidade dona do caso) E isso causa uma diferença em algumas tags, exibindo uma quantidade no cases/index.xhtml e outra quantidade na lista (searchresult.xhtml)...
Afinal, qual das duas regras esta correta?
Concluí isso com base nas seguintes consultas realizadas pelo sistema:
-- Select que retorna o numero de casos de cada tag
select
t.id,
t.tag_name,
t.sqlCondition is null,
t.consistencyCheck,
count(*)
from
tags_case tc
inner join
tag t
on t.id = tc.tag_id
inner join
tbcase c
on c.id=tc.case_id
inner join
tbunit u
on u.id = c.owner_unit_id
inner join
administrativeunit a
on a.id = u.adminunit_id
where
t.workspace_id = 1
and (
a.code like '00409C%' -- unidade dona do caso
)
group by
t.id,
t.tag_name
order by
t.tag_name;
-- CasesQuery, retorna a lista de casos com base no tags_case (tag_id passado como parametro
select
patient1_.PATIENT_NAME as col_0_0_,
tbcasebr0_1_.age as col_1_0_,
patient1_.gender as col_2_0_,
patient1_.recordNumber as col_3_0_,
tbcasebr0_1_.caseNumber as col_4_0_,
tbcasebr0_1_.iniTreatmentDate as col_5_0_,
tbcasebr0_1_.registrationDate as col_6_0_,
tbunit2_.name1 as col_7_0_,
administra3_.name1 as col_8_0_,
administra3_.code as col_9_0_,
tbcasebr0_.id as col_10_0_,
tbcasebr0_1_.endTreatmentDate as col_11_0_,
tbcasebr0_1_.state as col_12_0_,
tbcasebr0_1_.classification as col_13_0_,
patient1_.middleName as col_14_0_,
patient1_.lastName as col_15_0_,
tbcasebr0_1_.validationState as col_16_0_,
tbcasebr0_1_.registrationCode as col_17_0_,
tbcasebr0_1_.diagnosisType as col_18_0_,
patient1_.birthDate as col_19_0_,
tbcasebr0_1_.diagnosisDate as col_20_0_,
tbcasebr0_1_.outcomeDate as col_21_0_
from
casedatabr tbcasebr0_
inner join
tbcase tbcasebr0_1_
on tbcasebr0_.id=tbcasebr0_1_.id
inner join
patient patient1_
on tbcasebr0_1_.PATIENT_ID=patient1_.id
inner join
tbunit tbunit2_
on tbcasebr0_1_.NOTIFICATION_UNIT_ID=tbunit2_.id
inner join
administrativeunit administra3_
on tbcasebr0_1_.NOTIF_ADMINUNIT_ID=administra3_.id,
tbunit tbunit4_,
administrativeunit administra5_,
administrativeunit administra6_
where
tbcasebr0_1_.OWNER_UNIT_ID=tbunit4_.id -- unidade dona do caso
and tbunit4_.ADMINUNIT_ID=administra5_.id
and tbunit2_.ADMINUNIT_ID=administra6_.id -- unidade de notificação
and (
administra5_.code like '00409C%'
or administra6_.code like '00409C%'
)
and (
tbcasebr0_1_.classification in (
0, 1 , 2
)
)
and patient1_.WORKSPACE_ID=1
and (
exists (
select
tag8_.id
from
tags_case tags7_,
tag tag8_
where
tbcasebr0_.id=tags7_.CASE_ID
and tags7_.TAG_ID=tag8_.id
and tag8_.id=72
)
)
order by
patient1_.recordNumber,
tbcasebr0_1_.caseNumber
#3
Updated by Maurício Dos Santos over 12 years ago
- Assignee changed from Maurício Dos Santos to Ricardo Memoria
#4
Updated by Ricardo Memoria over 12 years ago
- File 2_124828.000000screenshot.png added
- File 2_124602.000000screenshot.png added
Já corrigi o problema da visão do usuário na tela principal.
Para usuários com visão País ou Estado, a página inicial é esta abaixo:
E quando o usuário de visão País ou Estado clicar no link da instituição, OU quando o usuário tiver apenas visão da unidade, a página exibida será apenas as dos casos em tratamento, onde serão exibidas apenas as tags, validações e estados do caso da instituição do usuário:
Também andei mexendo no CaseQuery para exibição das pesquisas dos casos, mas em algumas situações está dando divergência (é preciso ver com calma, mas é assunto para outra ocorrência).
#5
Updated by Ricardo Memoria over 12 years ago
- Status changed from Feedback to Resolved
#6
Updated by Maurício Dos Santos over 12 years ago
- Status changed from Resolved to Closed