#17: progress, not complete.
This commit is contained in:
parent
0026218993
commit
9c3af4c936
58 changed files with 1896 additions and 463 deletions
|
|
@ -1,7 +1,7 @@
|
|||
------------------------------------------------------------------------
|
||||
-- File queries.sql
|
||||
--
|
||||
-- autogenerated by adl.to-hugsql-queries at 2018-07-07T08:09:48.253Z
|
||||
-- autogenerated by adl.to-hugsql-queries at 2018-07-09T20:55:32.719Z
|
||||
--
|
||||
-- See [Application Description
|
||||
-- Language](https://github.com/simon-brooke/adl).
|
||||
|
|
@ -504,6 +504,19 @@ ORDER BY lv_canvassers.username,
|
|||
lv_canvassers.email,
|
||||
lv_canvassers.id
|
||||
|
||||
-- :name list-canvassers-by-issue :? :*
|
||||
-- :doc links all existing canvasser records related to a given issue
|
||||
SELECT *
|
||||
FROM canvassers, ln_expertise_canvassers_issues
|
||||
WHERE canvassers.id = ln_expertise_canvassers_issues.canvasser_id
|
||||
AND ln_expertise_canvassers_issues.issue_id = :id
|
||||
ORDER BY canvassers.username,
|
||||
canvassers.fullname,
|
||||
canvassers.address_id,
|
||||
canvassers.phone,
|
||||
canvassers.email,
|
||||
canvassers.id
|
||||
|
||||
-- :name list-canvassers-by-role :? :*
|
||||
-- :doc links all existing canvasser records related to a given role
|
||||
SELECT *
|
||||
|
|
@ -728,6 +741,13 @@ SELECT DISTINCT * FROM lv_issues
|
|||
--~ (if (:offset params) "OFFSET :offset ")
|
||||
--~ (if (:limit params) "LIMIT :limit" "LIMIT 100")
|
||||
|
||||
-- :name list-issues-by-canvasser :? :*
|
||||
-- :doc links all existing issue records related to a given canvasser
|
||||
SELECT *
|
||||
FROM issues, ln_experts_issues_canvassers
|
||||
WHERE issues.id = ln_experts_issues_canvassers.issue_id
|
||||
AND ln_experts_issues_canvassers.canvasser_id = :id
|
||||
|
||||
-- :name list-options :? :*
|
||||
-- :doc lists all existing option records
|
||||
SELECT DISTINCT * FROM lv_options
|
||||
|
|
|
|||
|
|
@ -36,4 +36,27 @@ FROM addresses
|
|||
WHERE locality = :locality
|
||||
|
||||
|
||||
-- :name list-open-requests :? :*
|
||||
-- :doc lists all existing followuprequest records which have not been closed and which the :expert has expertise to answer.
|
||||
SELECT DISTINCT request.*,
|
||||
electors.name ||', '|| electors.gender AS elector_id_expanded,
|
||||
addresses.address ||', '|| addresses.postcode ||', '|| visits.date AS visit_id_expanded,
|
||||
request.issue_id as issue_id_expanded,
|
||||
request.method_id AS method_id_expanded,
|
||||
visits.date
|
||||
FROM followuprequests as request,
|
||||
ln_experts_issues_canvassers as expertise,
|
||||
canvassers as experts,
|
||||
electors,
|
||||
addresses,
|
||||
visits
|
||||
where not exists (select * from followupactions as action
|
||||
where action.request_id = request.id
|
||||
and action.closed = true)
|
||||
and request.elector_id = electors.id
|
||||
and request.visit_id = visits.id
|
||||
and visits.address_id = addresses.id
|
||||
and request.issue_id = expertise.issue_id
|
||||
and expertise.canvasser_id = :expert
|
||||
ORDER BY visits.date desc
|
||||
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@
|
|||
--
|
||||
-- auto-generated by [Application Description Language framework]
|
||||
--
|
||||
-- (https://github.com/simon-brooke/adl) at 20180707T080949.294Z
|
||||
-- (https://github.com/simon-brooke/adl) at 20180709T205533.789Z
|
||||
--
|
||||
-- A web-app intended to be used by canvassers
|
||||
-- campaigning for a 'Yes' vote in the second independence
|
||||
|
|
@ -915,6 +915,38 @@ ALTER TABLE visits ADD CONSTRAINT ri_visits_canvassers_canvasser_id
|
|||
REFERENCES canvassers(id)
|
||||
ON DELETE NO ACTION ;
|
||||
|
||||
------------------------------------------------------------------------
|
||||
-- link table joining canvassers with issues
|
||||
------------------------------------------------------------------------
|
||||
CREATE TABLE ln_expertise_canvassers_issues
|
||||
(
|
||||
canvasser_id INTEGER,
|
||||
issue_id VARCHAR(32)
|
||||
);
|
||||
GRANT SELECT ON ln_expertise_canvassers_issues TO admin,
|
||||
analysts,
|
||||
canvassers,
|
||||
issueeditors,
|
||||
issueexperts,
|
||||
teamorganisers ;
|
||||
GRANT INSERT ON ln_expertise_canvassers_issues TO admin,
|
||||
canvassers,
|
||||
teamorganisers ;
|
||||
GRANT UPDATE ON ln_expertise_canvassers_issues TO admin,
|
||||
canvassers,
|
||||
teamorganisers ;
|
||||
GRANT DELETE ON ln_expertise_canvassers_issues TO admin ;
|
||||
|
||||
ALTER TABLE ln_expertise_canvassers_issues ADD CONSTRAINT ri_ln_expertise_canvassers_issues_canvassers_canvasser_id
|
||||
FOREIGN KEY( canvasser_id )
|
||||
REFERENCES canvassers(id)
|
||||
ON DELETE NO ACTION ;
|
||||
|
||||
ALTER TABLE ln_expertise_canvassers_issues ADD CONSTRAINT ri_ln_expertise_canvassers_issues_issues_issue_id
|
||||
FOREIGN KEY( issue_id )
|
||||
REFERENCES issues(id)
|
||||
ON DELETE NO ACTION ;
|
||||
|
||||
------------------------------------------------------------------------
|
||||
-- link table joining canvassers with roles
|
||||
------------------------------------------------------------------------
|
||||
|
|
@ -977,6 +1009,36 @@ ALTER TABLE ln_teams_events_teams ADD CONSTRAINT ri_ln_teams_events_teams_teams_
|
|||
REFERENCES teams(id)
|
||||
ON DELETE NO ACTION ;
|
||||
|
||||
------------------------------------------------------------------------
|
||||
-- link table joining issues with canvassers
|
||||
------------------------------------------------------------------------
|
||||
CREATE TABLE ln_experts_issues_canvassers
|
||||
(
|
||||
issue_id VARCHAR(32),
|
||||
canvasser_id INTEGER
|
||||
);
|
||||
GRANT SELECT ON ln_experts_issues_canvassers TO admin,
|
||||
analysts,
|
||||
canvassers,
|
||||
issueeditors,
|
||||
issueexperts,
|
||||
teamorganisers ;
|
||||
GRANT INSERT ON ln_experts_issues_canvassers TO admin,
|
||||
issueeditors ;
|
||||
GRANT UPDATE ON ln_experts_issues_canvassers TO admin,
|
||||
issueeditors ;
|
||||
GRANT DELETE ON ln_experts_issues_canvassers TO admin ;
|
||||
|
||||
ALTER TABLE ln_experts_issues_canvassers ADD CONSTRAINT ri_ln_experts_issues_canvassers_canvassers_canvasser_id
|
||||
FOREIGN KEY( canvasser_id )
|
||||
REFERENCES canvassers(id)
|
||||
ON DELETE NO ACTION ;
|
||||
|
||||
ALTER TABLE ln_experts_issues_canvassers ADD CONSTRAINT ri_ln_experts_issues_canvassers_issues_issue_id
|
||||
FOREIGN KEY( issue_id )
|
||||
REFERENCES issues(id)
|
||||
ON DELETE NO ACTION ;
|
||||
|
||||
------------------------------------------------------------------------
|
||||
-- link table joining roles with canvassers
|
||||
------------------------------------------------------------------------
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue