dmencu 0.7.31 → 0.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,3 @@
1
+ /// <reference types="backend-plus" />
2
+ import { TableDefinition, TableContext } from "./types-dmencu";
3
+ export declare function tareas_proximas(context: TableContext): TableDefinition;
@@ -0,0 +1,43 @@
1
+ (function (factory) {
2
+ if (typeof module === "object" && typeof module.exports === "object") {
3
+ var v = factory(require, exports);
4
+ if (v !== undefined) module.exports = v;
5
+ }
6
+ else if (typeof define === "function" && define.amd) {
7
+ define(["require", "exports"], factory);
8
+ }
9
+ })(function (require, exports) {
10
+ "use strict";
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.tareas_proximas = void 0;
13
+ function tareas_proximas(context) {
14
+ var be = context.be;
15
+ var puedeEditar = context.user.rol === 'admin';
16
+ return {
17
+ name: 'tareas_proximas',
18
+ elementName: 'tarea',
19
+ editable: puedeEditar,
20
+ fields: [
21
+ { name: 'operativo', typeName: 'text', nullable: false },
22
+ { name: 'tarea', typeName: 'text', nullable: false },
23
+ { name: 'estado', typeName: 'text', nullable: false },
24
+ { name: 'tarea_destino', typeName: 'text', nullable: false },
25
+ { name: 'estado_destino', typeName: 'text', nullable: false },
26
+ { name: 'orden', typeName: 'integer', nullable: false },
27
+ { name: 'condicion', typeName: 'text', nullable: false },
28
+ { name: 'desasigna_en_tarea_destino', typeName: 'boolean' },
29
+ { name: 'nombre_procedure', typeName: 'text' },
30
+ ],
31
+ hiddenColumns: ['estados__permite_editar_encuesta', 'estado_dest__permite_editar_encuesta'],
32
+ primaryKey: ['operativo', 'tarea', 'estado', 'tarea_destino'],
33
+ foreignKeys: [
34
+ { references: 'tareas', fields: ['operativo', 'tarea'] },
35
+ { references: 'estados', fields: ['operativo', 'estado'] },
36
+ { references: 'tareas', fields: ['operativo', { source: 'tarea_destino', target: 'tarea' }], alias: 'tarea_dest' },
37
+ { references: 'estados', fields: ['operativo', { source: 'estado_destino', target: 'estado' }], alias: 'estado_dest' }
38
+ ],
39
+ };
40
+ }
41
+ exports.tareas_proximas = tareas_proximas;
42
+ });
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtdGFyZWFzX3Byb3hpbWFzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZlci90YWJsZS10YXJlYXNfcHJveGltYXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0lBQUEsWUFBWSxDQUFDOzs7SUFJYixTQUFnQixlQUFlLENBQUMsT0FBb0I7UUFDaEQsSUFBSSxFQUFFLEdBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztRQUNsQixJQUFJLFdBQVcsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsS0FBRyxPQUFPLENBQUM7UUFDN0MsT0FBTztZQUNILElBQUksRUFBQyxpQkFBaUI7WUFDdEIsV0FBVyxFQUFDLE9BQU87WUFDbkIsUUFBUSxFQUFDLFdBQVc7WUFDcEIsTUFBTSxFQUFDO2dCQUNILEVBQUMsSUFBSSxFQUFDLFdBQVcsRUFBb0IsUUFBUSxFQUFDLE1BQU0sRUFBTyxRQUFRLEVBQUUsS0FBSyxFQUFDO2dCQUMzRSxFQUFDLElBQUksRUFBQyxPQUFPLEVBQXdCLFFBQVEsRUFBQyxNQUFNLEVBQU8sUUFBUSxFQUFFLEtBQUssRUFBQztnQkFDM0UsRUFBQyxJQUFJLEVBQUMsUUFBUSxFQUF1QixRQUFRLEVBQUMsTUFBTSxFQUFPLFFBQVEsRUFBRSxLQUFLLEVBQUM7Z0JBQzNFLEVBQUMsSUFBSSxFQUFDLGVBQWUsRUFBZ0IsUUFBUSxFQUFDLE1BQU0sRUFBTyxRQUFRLEVBQUUsS0FBSyxFQUFDO2dCQUMzRSxFQUFDLElBQUksRUFBQyxnQkFBZ0IsRUFBZSxRQUFRLEVBQUMsTUFBTSxFQUFPLFFBQVEsRUFBRSxLQUFLLEVBQUM7Z0JBQzNFLEVBQUMsSUFBSSxFQUFDLE9BQU8sRUFBd0IsUUFBUSxFQUFDLFNBQVMsRUFBSSxRQUFRLEVBQUUsS0FBSyxFQUFDO2dCQUMzRSxFQUFDLElBQUksRUFBQyxXQUFXLEVBQW9CLFFBQVEsRUFBQyxNQUFNLEVBQU8sUUFBUSxFQUFFLEtBQUssRUFBQztnQkFDM0UsRUFBQyxJQUFJLEVBQUMsNEJBQTRCLEVBQUcsUUFBUSxFQUFDLFNBQVMsRUFBb0I7Z0JBQzNFLEVBQUMsSUFBSSxFQUFDLGtCQUFrQixFQUFhLFFBQVEsRUFBQyxNQUFNLEVBQXVCO2FBQzlFO1lBQ0QsYUFBYSxFQUFDLENBQUMsa0NBQWtDLEVBQUMsc0NBQXNDLENBQUM7WUFDekYsVUFBVSxFQUFDLENBQUMsV0FBVyxFQUFDLE9BQU8sRUFBRSxRQUFRLEVBQUUsZUFBZSxDQUFDO1lBQzNELFdBQVcsRUFBRTtnQkFDVCxFQUFDLFVBQVUsRUFBRSxRQUFRLEVBQUksTUFBTSxFQUFFLENBQUMsV0FBVyxFQUFDLE9BQU8sQ0FBQyxFQUFDO2dCQUN2RCxFQUFDLFVBQVUsRUFBRSxTQUFTLEVBQUcsTUFBTSxFQUFFLENBQUMsV0FBVyxFQUFDLFFBQVEsQ0FBQyxFQUFDO2dCQUN4RCxFQUFDLFVBQVUsRUFBRSxRQUFRLEVBQUksTUFBTSxFQUFFLENBQUMsV0FBVyxFQUFFLEVBQUMsTUFBTSxFQUFDLGVBQWUsRUFBRyxNQUFNLEVBQUMsT0FBTyxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUMsWUFBWSxFQUFFO2dCQUNoSCxFQUFDLFVBQVUsRUFBRSxTQUFTLEVBQUcsTUFBTSxFQUFFLENBQUMsV0FBVyxFQUFFLEVBQUMsTUFBTSxFQUFDLGdCQUFnQixFQUFFLE1BQU0sRUFBQyxRQUFRLEVBQUMsQ0FBQyxFQUFFLEtBQUssRUFBQyxhQUFhLEVBQUM7YUFDbkg7U0FDSixDQUFDO0lBQ04sQ0FBQztJQTNCRCwwQ0EyQkMiLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcclxuXHJcbmltcG9ydCB7VGFibGVEZWZpbml0aW9uLCBUYWJsZUNvbnRleHR9IGZyb20gXCIuL3R5cGVzLWRtZW5jdVwiO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHRhcmVhc19wcm94aW1hcyhjb250ZXh0OlRhYmxlQ29udGV4dCk6VGFibGVEZWZpbml0aW9uIHtcclxuICAgIHZhciBiZT1jb250ZXh0LmJlO1xyXG4gICAgdmFyIHB1ZWRlRWRpdGFyID0gY29udGV4dC51c2VyLnJvbD09PSdhZG1pbic7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAgIG5hbWU6J3RhcmVhc19wcm94aW1hcycsXHJcbiAgICAgICAgZWxlbWVudE5hbWU6J3RhcmVhJyxcclxuICAgICAgICBlZGl0YWJsZTpwdWVkZUVkaXRhcixcclxuICAgICAgICBmaWVsZHM6W1xyXG4gICAgICAgICAgICB7bmFtZTonb3BlcmF0aXZvJyAgICAgICAgICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgIG51bGxhYmxlOiBmYWxzZX0sXHJcbiAgICAgICAgICAgIHtuYW1lOid0YXJlYScgICAgICAgICAgICAgICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCAgbnVsbGFibGU6IGZhbHNlfSxcclxuICAgICAgICAgICAge25hbWU6J2VzdGFkbycgICAgICAgICAgICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAsICBudWxsYWJsZTogZmFsc2V9LFxyXG4gICAgICAgICAgICB7bmFtZTondGFyZWFfZGVzdGlubycgICAgICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgIG51bGxhYmxlOiBmYWxzZX0sXHJcbiAgICAgICAgICAgIHtuYW1lOidlc3RhZG9fZGVzdGlubycgICAgICAgICAgICAgLCB0eXBlTmFtZTondGV4dCcgICAgLCAgbnVsbGFibGU6IGZhbHNlfSxcclxuICAgICAgICAgICAge25hbWU6J29yZGVuJyAgICAgICAgICAgICAgICAgICAgICAsIHR5cGVOYW1lOidpbnRlZ2VyJyAsICBudWxsYWJsZTogZmFsc2V9LFxyXG4gICAgICAgICAgICB7bmFtZTonY29uZGljaW9uJyAgICAgICAgICAgICAgICAgICwgdHlwZU5hbWU6J3RleHQnICAgICwgIG51bGxhYmxlOiBmYWxzZX0sXHJcbiAgICAgICAgICAgIHtuYW1lOidkZXNhc2lnbmFfZW5fdGFyZWFfZGVzdGlubycgLCB0eXBlTmFtZTonYm9vbGVhbicgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAge25hbWU6J25vbWJyZV9wcm9jZWR1cmUnICAgICAgICAgICAsIHR5cGVOYW1lOid0ZXh0JyAgICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgIF0sXHJcbiAgICAgICAgaGlkZGVuQ29sdW1uczpbJ2VzdGFkb3NfX3Blcm1pdGVfZWRpdGFyX2VuY3Vlc3RhJywnZXN0YWRvX2Rlc3RfX3Blcm1pdGVfZWRpdGFyX2VuY3Vlc3RhJ10sXHJcbiAgICAgICAgcHJpbWFyeUtleTpbJ29wZXJhdGl2bycsJ3RhcmVhJywgJ2VzdGFkbycsICd0YXJlYV9kZXN0aW5vJ10sXHJcbiAgICAgICAgZm9yZWlnbktleXM6IFtcclxuICAgICAgICAgICAge3JlZmVyZW5jZXM6ICd0YXJlYXMnICAsIGZpZWxkczogWydvcGVyYXRpdm8nLCd0YXJlYSddfSxcclxuICAgICAgICAgICAge3JlZmVyZW5jZXM6ICdlc3RhZG9zJyAsIGZpZWxkczogWydvcGVyYXRpdm8nLCdlc3RhZG8nXX0sXHJcbiAgICAgICAgICAgIHtyZWZlcmVuY2VzOiAndGFyZWFzJyAgLCBmaWVsZHM6IFsnb3BlcmF0aXZvJywge3NvdXJjZTondGFyZWFfZGVzdGlubycgLCB0YXJnZXQ6J3RhcmVhJyB9XSwgYWxpYXM6J3RhcmVhX2Rlc3QnIH0sXHJcbiAgICAgICAgICAgIHtyZWZlcmVuY2VzOiAnZXN0YWRvcycgLCBmaWVsZHM6IFsnb3BlcmF0aXZvJywge3NvdXJjZTonZXN0YWRvX2Rlc3Rpbm8nLCB0YXJnZXQ6J2VzdGFkbyd9XSwgYWxpYXM6J2VzdGFkb19kZXN0J31cclxuICAgICAgICBdLFxyXG4gICAgfTtcclxufVxyXG5cclxuIl19
@@ -1,7 +1,7 @@
1
1
  --set role dmencu_owner;
2
2
  --set search_path=base;
3
3
 
4
- DROP FUNCTION if exists asignar_desasignar_tareas_tem_trg();
4
+ --DROP FUNCTION if exists asignar_desasignar_tareas_tem_trg();
5
5
  CREATE OR REPLACE FUNCTION asignar_desasignar_tareas_tem_trg()
6
6
  RETURNS trigger
7
7
  LANGUAGE 'plpgsql'
@@ -32,7 +32,7 @@ begin
32
32
  end;
33
33
  $BODY$;
34
34
 
35
- DROP TRIGGER IF EXISTS asignar_desasignar_tareas_tem_trg ON tareas_tem;
35
+ --DROP TRIGGER IF EXISTS asignar_desasignar_tareas_tem_trg ON tareas_tem;
36
36
  CREATE TRIGGER asignar_desasignar_tareas_tem_trg
37
37
  AFTER UPDATE OF asignado
38
38
  ON tareas_tem
@@ -0,0 +1,23 @@
1
+ --set role dmencu_owner;
2
+ --set search_path=base;
3
+ --DROP FUNCTION if exists desverificar_tarea_trg();
4
+ CREATE OR REPLACE FUNCTION desverificar_tarea_trg()
5
+ RETURNS trigger
6
+ LANGUAGE 'plpgsql'
7
+ AS $BODY$
8
+ begin
9
+ if new.verificado is null then
10
+ update tem
11
+ set tarea_proxima = null
12
+ where operativo = new.operativo and enc = new.enc;
13
+ end if;
14
+ return new;
15
+ end;
16
+ $BODY$;
17
+
18
+ --DROP TRIGGER IF EXISTS desverificar_tarea_trg ON tareas_tem;
19
+ CREATE TRIGGER desverificar_tarea_trg
20
+ AFTER UPDATE OF verificado
21
+ ON tareas_tem
22
+ FOR EACH ROW
23
+ EXECUTE PROCEDURE desverificar_tarea_trg();
@@ -1,6 +1,6 @@
1
1
  --set role dmencu_owner;
2
2
  --set search_path=base;
3
- DROP FUNCTION if exists determinar_tarea_proxima_trg();
3
+ --DROP FUNCTION if exists determinar_tarea_proxima_trg();
4
4
  CREATE OR REPLACE FUNCTION determinar_tarea_proxima_trg()
5
5
  RETURNS trigger
6
6
  LANGUAGE 'plpgsql'
@@ -60,7 +60,7 @@ begin
60
60
  end;
61
61
  $BODY$;
62
62
 
63
- DROP TRIGGER IF EXISTS determinar_tarea_proxima_trg ON tareas_tem;
63
+ --DROP TRIGGER IF EXISTS determinar_tarea_proxima_trg ON tareas_tem;
64
64
  CREATE TRIGGER determinar_tarea_proxima_trg
65
65
  AFTER UPDATE OF verificado
66
66
  ON tareas_tem
@@ -0,0 +1,34 @@
1
+ --set role to ggs2022_owner;
2
+ --set search_path=base;
3
+ CREATE OR REPLACE FUNCTION tarea_cumple_condicion(p_operativo text, p_tarea text, p_estado text, p_enc text, p_condicion text)
4
+ RETURNS boolean AS
5
+ $BODY$
6
+ DECLARE
7
+ v_sent text;
8
+ v_cond text;
9
+ v_salida integer;
10
+ BEGIN
11
+ v_cond=p_condicion;
12
+ v_sent=' select 1
13
+ from base.tareas_tem t
14
+ inner join base.tareas_proximas tp using (operativo, tarea, estado)
15
+ inner join tem te using (operativo,enc)
16
+ left join tokens tok on t.cargado_dm=tok.token
17
+ left join viviendas v on (te.operativo = v.operativo and te.enc = v.vivienda)
18
+ left join no_rea nr on (te.norea::text = nr.no_rea)
19
+ where t.operativo='||quote_literal(p_operativo)||
20
+ ' and t.tarea='||quote_literal(p_tarea)||
21
+ ' and t.estado='||quote_literal(p_estado)||
22
+ ' and t.enc='||quote_literal(p_enc)||
23
+ ' and '||v_cond||';';
24
+ --raise notice 'esto %',vsent;
25
+ execute v_sent into v_salida;
26
+ IF v_salida=1 THEN
27
+ return true;
28
+ ELSE
29
+ return false;
30
+ END IF;
31
+
32
+ END;
33
+ $BODY$
34
+ LANGUAGE plpgsql VOLATILE;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "dmencu",
3
3
  "description": "DM Encu - Encuestas en dispositivo móvil",
4
- "version": "0.7.31",
4
+ "version": "0.8.1",
5
5
  "author": "Codenautas <codenautas@googlegroups.com>",
6
6
  "license": "MIT",
7
7
  "main": "dist/server/server/app-dmencu.js",