-- -- PostgreSQL database dump -- -- Dumped from database version 16.9 (165f042) -- Dumped by pg_dump version 16.9 SET statement_timeout = 0; SET lock_timeout = 0; SET idle_in_transaction_session_timeout = 0; SET client_encoding = 'UTF8'; SET standard_conforming_strings = on; SELECT pg_catalog.set_config('search_path', '', false); SET check_function_bodies = false; SET xmloption = content; SET client_min_messages = warning; SET row_security = off; -- -- Name: absence_type; Type: TYPE; Schema: public; Owner: neondb_owner -- CREATE TYPE public.absence_type AS ENUM ( 'sick_leave', 'vacation', 'personal_leave', 'injury' ); ALTER TYPE public.absence_type OWNER TO neondb_owner; -- -- Name: certification_status; Type: TYPE; Schema: public; Owner: neondb_owner -- CREATE TYPE public.certification_status AS ENUM ( 'valid', 'expiring_soon', 'expired' ); ALTER TYPE public.certification_status OWNER TO neondb_owner; -- -- Name: shift_preference; Type: TYPE; Schema: public; Owner: neondb_owner -- CREATE TYPE public.shift_preference AS ENUM ( 'morning', 'afternoon', 'night', 'any' ); ALTER TYPE public.shift_preference OWNER TO neondb_owner; -- -- Name: shift_status; Type: TYPE; Schema: public; Owner: neondb_owner -- CREATE TYPE public.shift_status AS ENUM ( 'planned', 'active', 'completed', 'cancelled' ); ALTER TYPE public.shift_status OWNER TO neondb_owner; -- -- Name: shift_type; Type: TYPE; Schema: public; Owner: neondb_owner -- CREATE TYPE public.shift_type AS ENUM ( 'fixed_post', 'patrol', 'night_inspection', 'quick_response' ); ALTER TYPE public.shift_type OWNER TO neondb_owner; -- -- Name: site_preference_type; Type: TYPE; Schema: public; Owner: neondb_owner -- CREATE TYPE public.site_preference_type AS ENUM ( 'preferred', 'blacklisted' ); ALTER TYPE public.site_preference_type OWNER TO neondb_owner; -- -- Name: training_status; Type: TYPE; Schema: public; Owner: neondb_owner -- CREATE TYPE public.training_status AS ENUM ( 'scheduled', 'completed', 'expired', 'cancelled' ); ALTER TYPE public.training_status OWNER TO neondb_owner; -- -- Name: user_role; Type: TYPE; Schema: public; Owner: neondb_owner -- CREATE TYPE public.user_role AS ENUM ( 'admin', 'coordinator', 'guard', 'client' ); ALTER TYPE public.user_role OWNER TO neondb_owner; SET default_tablespace = ''; SET default_table_access_method = heap; -- -- Name: absence_affected_shifts; Type: TABLE; Schema: public; Owner: neondb_owner -- CREATE TABLE public.absence_affected_shifts ( id character varying DEFAULT gen_random_uuid() NOT NULL, absence_id character varying NOT NULL, shift_id character varying NOT NULL, is_substituted boolean DEFAULT false, created_at timestamp without time zone DEFAULT now() ); ALTER TABLE public.absence_affected_shifts OWNER TO neondb_owner; -- -- Name: absences; Type: TABLE; Schema: public; Owner: neondb_owner -- CREATE TABLE public.absences ( id character varying DEFAULT gen_random_uuid() NOT NULL, guard_id character varying NOT NULL, type public.absence_type NOT NULL, start_date date NOT NULL, end_date date NOT NULL, certificate_url character varying, notes text, is_approved boolean DEFAULT false, needs_substitute boolean DEFAULT true, substitute_guard_id character varying, created_at timestamp without time zone DEFAULT now(), approved_at timestamp without time zone, approved_by character varying ); ALTER TABLE public.absences OWNER TO neondb_owner; -- -- Name: certifications; Type: TABLE; Schema: public; Owner: neondb_owner -- CREATE TABLE public.certifications ( id character varying DEFAULT gen_random_uuid() NOT NULL, guard_id character varying NOT NULL, type character varying NOT NULL, name character varying NOT NULL, issue_date date NOT NULL, expiry_date date NOT NULL, status public.certification_status DEFAULT 'valid'::public.certification_status NOT NULL, document_url character varying, created_at timestamp without time zone DEFAULT now() ); ALTER TABLE public.certifications OWNER TO neondb_owner; -- -- Name: contract_parameters; Type: TABLE; Schema: public; Owner: neondb_owner -- CREATE TABLE public.contract_parameters ( id character varying DEFAULT gen_random_uuid() NOT NULL, contract_type character varying DEFAULT 'CCNL_VIGILANZA_2023'::character varying NOT NULL, max_hours_per_day integer DEFAULT 8 NOT NULL, max_overtime_per_day integer DEFAULT 2 NOT NULL, max_hours_per_week integer DEFAULT 40 NOT NULL, max_overtime_per_week integer DEFAULT 8 NOT NULL, min_daily_rest_hours integer DEFAULT 11 NOT NULL, min_weekly_rest_hours integer DEFAULT 24 NOT NULL, max_night_hours_per_week integer DEFAULT 48, holiday_pay_increase integer DEFAULT 30, night_pay_increase integer DEFAULT 20, overtime_pay_increase integer DEFAULT 15, created_at timestamp without time zone DEFAULT now(), updated_at timestamp without time zone DEFAULT now() ); ALTER TABLE public.contract_parameters OWNER TO neondb_owner; -- -- Name: guard_constraints; Type: TABLE; Schema: public; Owner: neondb_owner -- CREATE TABLE public.guard_constraints ( id character varying DEFAULT gen_random_uuid() NOT NULL, guard_id character varying NOT NULL, preferred_shift_type public.shift_preference DEFAULT 'any'::public.shift_preference, max_hours_per_day integer DEFAULT 10, max_hours_per_week integer DEFAULT 48, preferred_days_off integer[], available_on_holidays boolean DEFAULT true, notes text, updated_at timestamp without time zone DEFAULT now() ); ALTER TABLE public.guard_constraints OWNER TO neondb_owner; -- -- Name: guards; Type: TABLE; Schema: public; Owner: neondb_owner -- CREATE TABLE public.guards ( id character varying DEFAULT gen_random_uuid() NOT NULL, user_id character varying, badge_number character varying NOT NULL, phone_number character varying, is_armed boolean DEFAULT false, has_fire_safety boolean DEFAULT false, has_first_aid boolean DEFAULT false, has_driver_license boolean DEFAULT false, languages text[], created_at timestamp without time zone DEFAULT now(), updated_at timestamp without time zone DEFAULT now() ); ALTER TABLE public.guards OWNER TO neondb_owner; -- -- Name: holiday_assignments; Type: TABLE; Schema: public; Owner: neondb_owner -- CREATE TABLE public.holiday_assignments ( id character varying DEFAULT gen_random_uuid() NOT NULL, holiday_id character varying NOT NULL, guard_id character varying NOT NULL, shift_id character varying, created_at timestamp without time zone DEFAULT now() ); ALTER TABLE public.holiday_assignments OWNER TO neondb_owner; -- -- Name: holidays; Type: TABLE; Schema: public; Owner: neondb_owner -- CREATE TABLE public.holidays ( id character varying DEFAULT gen_random_uuid() NOT NULL, name character varying NOT NULL, date date NOT NULL, is_national boolean DEFAULT true, worked_guard_ids text[], created_at timestamp without time zone DEFAULT now(), year integer NOT NULL ); ALTER TABLE public.holidays OWNER TO neondb_owner; -- -- Name: notifications; Type: TABLE; Schema: public; Owner: neondb_owner -- CREATE TABLE public.notifications ( id character varying DEFAULT gen_random_uuid() NOT NULL, user_id character varying NOT NULL, title character varying NOT NULL, message text NOT NULL, type character varying NOT NULL, is_read boolean DEFAULT false, related_entity_id character varying, created_at timestamp without time zone DEFAULT now() ); ALTER TABLE public.notifications OWNER TO neondb_owner; -- -- Name: sessions; Type: TABLE; Schema: public; Owner: neondb_owner -- CREATE TABLE public.sessions ( sid character varying NOT NULL, sess jsonb NOT NULL, expire timestamp without time zone NOT NULL ); ALTER TABLE public.sessions OWNER TO neondb_owner; -- -- Name: shift_assignments; Type: TABLE; Schema: public; Owner: neondb_owner -- CREATE TABLE public.shift_assignments ( id character varying DEFAULT gen_random_uuid() NOT NULL, shift_id character varying NOT NULL, guard_id character varying NOT NULL, assigned_at timestamp without time zone DEFAULT now(), confirmed_at timestamp without time zone, check_in_time timestamp without time zone, check_out_time timestamp without time zone ); ALTER TABLE public.shift_assignments OWNER TO neondb_owner; -- -- Name: shifts; Type: TABLE; Schema: public; Owner: neondb_owner -- CREATE TABLE public.shifts ( id character varying DEFAULT gen_random_uuid() NOT NULL, site_id character varying NOT NULL, start_time timestamp without time zone NOT NULL, end_time timestamp without time zone NOT NULL, status public.shift_status DEFAULT 'planned'::public.shift_status NOT NULL, notes text, created_at timestamp without time zone DEFAULT now(), updated_at timestamp without time zone DEFAULT now() ); ALTER TABLE public.shifts OWNER TO neondb_owner; -- -- Name: site_preferences; Type: TABLE; Schema: public; Owner: neondb_owner -- CREATE TABLE public.site_preferences ( id character varying DEFAULT gen_random_uuid() NOT NULL, site_id character varying NOT NULL, guard_id character varying NOT NULL, preference character varying NOT NULL, priority integer DEFAULT 0, reason text, created_at timestamp without time zone DEFAULT now() ); ALTER TABLE public.site_preferences OWNER TO neondb_owner; -- -- Name: sites; Type: TABLE; Schema: public; Owner: neondb_owner -- CREATE TABLE public.sites ( id character varying DEFAULT gen_random_uuid() NOT NULL, name character varying NOT NULL, address character varying NOT NULL, client_id character varying, shift_type public.shift_type NOT NULL, min_guards integer DEFAULT 1 NOT NULL, requires_armed boolean DEFAULT false, requires_driver_license boolean DEFAULT false, latitude character varying, longitude character varying, is_active boolean DEFAULT true, created_at timestamp without time zone DEFAULT now(), updated_at timestamp without time zone DEFAULT now() ); ALTER TABLE public.sites OWNER TO neondb_owner; -- -- Name: training_courses; Type: TABLE; Schema: public; Owner: neondb_owner -- CREATE TABLE public.training_courses ( id character varying DEFAULT gen_random_uuid() NOT NULL, guard_id character varying NOT NULL, course_name character varying NOT NULL, course_type character varying NOT NULL, scheduled_date date, completion_date date, expiry_date date, status public.training_status DEFAULT 'scheduled'::public.training_status NOT NULL, certificate_url character varying, provider character varying, hours integer, notes text, created_at timestamp without time zone DEFAULT now() ); ALTER TABLE public.training_courses OWNER TO neondb_owner; -- -- Name: users; Type: TABLE; Schema: public; Owner: neondb_owner -- CREATE TABLE public.users ( id character varying DEFAULT gen_random_uuid() NOT NULL, email character varying, first_name character varying, last_name character varying, profile_image_url character varying, role public.user_role DEFAULT 'guard'::public.user_role NOT NULL, created_at timestamp without time zone DEFAULT now(), updated_at timestamp without time zone DEFAULT now() ); ALTER TABLE public.users OWNER TO neondb_owner; -- -- Data for Name: absence_affected_shifts; Type: TABLE DATA; Schema: public; Owner: neondb_owner -- COPY public.absence_affected_shifts (id, absence_id, shift_id, is_substituted, created_at) FROM stdin; \. -- -- Data for Name: absences; Type: TABLE DATA; Schema: public; Owner: neondb_owner -- COPY public.absences (id, guard_id, type, start_date, end_date, certificate_url, notes, is_approved, needs_substitute, substitute_guard_id, created_at, approved_at, approved_by) FROM stdin; \. -- -- Data for Name: certifications; Type: TABLE DATA; Schema: public; Owner: neondb_owner -- COPY public.certifications (id, guard_id, type, name, issue_date, expiry_date, status, document_url, created_at) FROM stdin; \. -- -- Data for Name: contract_parameters; Type: TABLE DATA; Schema: public; Owner: neondb_owner -- COPY public.contract_parameters (id, contract_type, max_hours_per_day, max_overtime_per_day, max_hours_per_week, max_overtime_per_week, min_daily_rest_hours, min_weekly_rest_hours, max_night_hours_per_week, holiday_pay_increase, night_pay_increase, overtime_pay_increase, created_at, updated_at) FROM stdin; \. -- -- Data for Name: guard_constraints; Type: TABLE DATA; Schema: public; Owner: neondb_owner -- COPY public.guard_constraints (id, guard_id, preferred_shift_type, max_hours_per_day, max_hours_per_week, preferred_days_off, available_on_holidays, notes, updated_at) FROM stdin; \. -- -- Data for Name: guards; Type: TABLE DATA; Schema: public; Owner: neondb_owner -- COPY public.guards (id, user_id, badge_number, phone_number, is_armed, has_fire_safety, has_first_aid, has_driver_license, languages, created_at, updated_at) FROM stdin; bd6451cc-2b35-49f2-9fc6-249a32892fe3 \N GPV-BPxp +39 333 1234567 t f f f {} 2025-10-11 10:06:22.578144 2025-10-11 10:06:22.578144 54b94b52-e7c7-440c-a3fc-7a3eb73bc0ec \N Guardia di test t t t t {} 2025-10-11 10:08:48.44518 2025-10-11 10:08:48.44518 d969de12-6b2e-4922-856a-25ef7ffb4151 \N ARMEDQ7Z +393331111111 t t f f {italiano} 2025-10-11 10:47:21.967514 2025-10-11 10:47:21.967514 6939d71f-ec78-47ff-a5cc-8b34862264a6 \N NOARMPo1 +393332222222 f f t t {italiano} 2025-10-11 10:47:36.37076 2025-10-11 10:47:36.37076 6f8f5d9d-0f10-4c25-9390-7d179fe53455 \N ARMZ7 3910000000 t f f f {it} 2025-10-11 10:56:56.418186 2025-10-11 10:56:56.418186 guard-edit-test \N GPV-EDIT-002 +39 999 8888777 t t f t {} 2025-10-11 15:51:27.834342 2025-10-11 15:52:31.214 \. -- -- Data for Name: holiday_assignments; Type: TABLE DATA; Schema: public; Owner: neondb_owner -- COPY public.holiday_assignments (id, holiday_id, guard_id, shift_id, created_at) FROM stdin; \. -- -- Data for Name: holidays; Type: TABLE DATA; Schema: public; Owner: neondb_owner -- COPY public.holidays (id, name, date, is_national, worked_guard_ids, created_at, year) FROM stdin; aef7418f-10bc-4e30-a7cb-b161de8c268f Natale 2025 2025-12-25 t \N 2025-10-11 19:22:16.473591 2025 \. -- -- Data for Name: notifications; Type: TABLE DATA; Schema: public; Owner: neondb_owner -- COPY public.notifications (id, user_id, title, message, type, is_read, related_entity_id, created_at) FROM stdin; \. -- -- Data for Name: sessions; Type: TABLE DATA; Schema: public; Owner: neondb_owner -- COPY public.sessions (sid, sess, expire) FROM stdin; EOx2wCIiYXs6ymvWltapMxSk_OnpDO1X {"cookie": {"path": "/", "secure": true, "expires": "2025-10-18T09:29:52.444Z", "httpOnly": true, "originalMaxAge": 604800000}, "passport": {"user": {"claims": {"aud": "6d543d2c-20b9-4ea6-93fe-70fe9b1d9f80", "exp": 1760178591, "iat": 1760174991, "iss": "https://test-mock-oidc.replit.app/", "jti": "d2897fd603422350e9c771fdfb2bb0c2", "sub": "admin001", "role": "admin", "email": "admin@vigilanza.it", "auth_time": 1760174991, "last_name": "Rossi", "first_name": "Mario"}, "expires_at": 1760178591, "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6Ijc4MDgyZTlmZjVhOTA1YjIifQ.eyJpc3MiOiJodHRwczovL3Rlc3QtbW9jay1vaWRjLnJlcGxpdC5hcHAvIiwiaWF0IjoxNzYwMTc0OTkxLCJleHAiOjE3NjAxNzg1OTEsInN1YiI6ImFkbWluMDAxIiwiZW1haWwiOiJhZG1pbkB2aWdpbGFuemEuaXQiLCJmaXJzdF9uYW1lIjoiTWFyaW8iLCJsYXN0X25hbWUiOiJSb3NzaSIsInJvbGUiOiJhZG1pbiJ9.Q1Vi6UskNt8GEVPKVBtzBe7m-zV5vCQWmL1fgXb0g9ktNV_l09qvUCTLwHk9i8c5uzNtr-3uYqtW4wsG1mAmsw0Ax2JACA7mlVWXTZ1aZFqP2HRKlyOvrphoT05NAdDuScR726UpnsXfrLoZd29IH08I5kZcRqX51EiCfAMDac8adK8eZZlgSz2WfgkrxKLxa46uvnffO3NnsLG2CBniEE_OqpP-zoMItZnPHmm3-Nb-q_gPK2bP7zEuWWIEOF4Dlsf315t3S_jeN4A6fi3u1XS5K6KcMPUH3itRe8w_T8e0yKYiq-STuXrW0XsKCesanrgtc-1_DG_IatdbXS3_uA", "refresh_token": "eyJzdWIiOiJhZG1pbjAwMSIsImVtYWlsIjoiYWRtaW5AdmlnaWxhbnphLml0IiwiZmlyc3RfbmFtZSI6Ik1hcmlvIiwibGFzdF9uYW1lIjoiUm9zc2kiLCJyb2xlIjoiYWRtaW4ifQ"}}} 2025-10-18 09:36:39 bHcuoH7eaupU1HmlAUuhDCWk1OCai1yX {"cookie": {"path": "/", "secure": true, "expires": "2025-10-18T15:17:29.732Z", "httpOnly": true, "originalMaxAge": 604800000}, "test-mock-oidc.replit.app": {"code_verifier": "XVRn_28dGTxuDcD_EqY_1FVcvsg6T_VLw8LBM0mDOeo"}} 2025-10-18 15:17:30 j_-MaFHmjhRMHMo0tmPD_zDtYfmJY9NM {"cookie": {"path": "/", "secure": true, "expires": "2025-10-20T07:19:22.605Z", "httpOnly": true, "originalMaxAge": 604800000}, "replit.com": {"code_verifier": "7aA8NPNPCXpK5DZZ8EtIsAzPlvRdwY3yTq1iiSB5OvQ"}} 2025-10-22 08:09:45 MaoXbrXPuQZddUf3Oc5pG9wXmV8Vpvqg {"cookie": {"path": "/", "secure": true, "expires": "2025-10-18T09:29:10.214Z", "httpOnly": true, "originalMaxAge": 604800000}, "replit.com": {"code_verifier": "ftUe_DWh6Lzz_1Yqg51bbkUZQIs_D3Q5l0BOiFp-1lg"}} 2025-10-18 09:29:11 BCb25dspMJL_35e-GK-uhPg4JZqE6a8N {"cookie": {"path": "/", "secure": true, "expires": "2025-10-18T10:03:26.943Z", "httpOnly": true, "originalMaxAge": 604800000}, "passport": {"user": {"claims": {"aud": "6d543d2c-20b9-4ea6-93fe-70fe9b1d9f80", "exp": 1760180606, "iat": 1760177006, "iss": "https://test-mock-oidc.replit.app/", "jti": "e0fe7223680d5c9f10d10e365296e745", "sub": "RELy01vi", "role": "admin", "email": "test-jv_1@vigilanza.it", "auth_time": 1760177006, "last_name": "User", "first_name": "Test"}, "expires_at": 1760180606, "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6Ijc4MDgyZTlmZjVhOTA1YjIifQ.eyJpc3MiOiJodHRwczovL3Rlc3QtbW9jay1vaWRjLnJlcGxpdC5hcHAvIiwiaWF0IjoxNzYwMTc3MDA2LCJleHAiOjE3NjAxODA2MDYsInN1YiI6IlJFTHkwMXZpIiwiZW1haWwiOiJ0ZXN0LWp2XzFAdmlnaWxhbnphLml0IiwiZmlyc3RfbmFtZSI6IlRlc3QiLCJsYXN0X25hbWUiOiJVc2VyIiwicm9sZSI6ImFkbWluIn0.XAZyuW1mJ-IWmAnoLriVfQWjkEDl3Af5SgjRTrekvtBaNOz5eZjc0adWziJHg4zmVVLNA0daClb-tr-sHMSm-55mw6Nn5rR12jDCuFSKFiCZYsUfDbyurPXpy5qWHPs9N6C8AFtDWV-YtZhmi1k28ZHyKqSqdUIfVKVuAOew-6WO1fxkqbvs7SDiTMr0eXHETJwf2ofAma4N8PK2N-EfJnMhno0E8seFaKK_a27lXRqlzitH3iNgMEKnDpEKHnudy4pO92D_Mjx_wh6k6QyfvhkL1kP5T_WMT5b3YHbpoePj-Bj33kybCac8O_KTiZ5qOKpbfrKyWtUpmsS2oHjzzw", "refresh_token": "eyJzdWIiOiJSRUx5MDF2aSIsImVtYWlsIjoidGVzdC1qdl8xQHZpZ2lsYW56YS5pdCIsImZpcnN0X25hbWUiOiJUZXN0IiwibGFzdF9uYW1lIjoiVXNlciIsInJvbGUiOiJhZG1pbiJ9"}}} 2025-10-18 10:07:03 pUCOXknX_aeGMXMO3Thr_IG5vnEuFX7t {"cookie": {"path": "/", "secure": true, "expires": "2025-10-20T07:12:32.468Z", "httpOnly": true, "originalMaxAge": 604800000}, "replit.com": {"code_verifier": "dPtnXTfpcDEqx_ONtmKbQ93jnP7p-sc4I22t0LJyLBc"}} 2025-10-20 07:12:33 0MK06XSaPIpFv4XSuJeGKXvi1SxOlenq {"cookie": {"path": "/", "secure": true, "expires": "2025-10-18T19:52:57.199Z", "httpOnly": true, "originalMaxAge": 604800000}, "passport": {"user": {"claims": {"aud": "6d543d2c-20b9-4ea6-93fe-70fe9b1d9f80", "exp": 1760215976, "iat": 1760212376, "iss": "https://replit.com/oidc", "sub": "48531002", "email": "marco@lanzara.eu", "at_hash": "eJHjY3-MxDZI-SmzsihfmQ", "username": "marco370", "auth_time": 1760196628, "last_name": "Lanzara", "first_name": "Marco"}, "expires_at": 1760215976, "access_token": "5fLtx-nV43vr4TjerSFAWwU0umQR_pqCNeqLJqB_wtE", "refresh_token": "EAEqWZHNzy2bvEYSc3nqQ5umyFMROY1fnJffaHbHNSR"}}} 2025-10-18 19:56:04 MGRsxqgxDuQWtazi3fyWmpKRzAnln9HH {"cookie": {"path": "/", "secure": true, "expires": "2025-10-18T14:54:00.458Z", "httpOnly": true, "originalMaxAge": 604800000}, "passport": {"user": {"claims": {"aud": "6d543d2c-20b9-4ea6-93fe-70fe9b1d9f80", "exp": 1760198039, "iat": 1760194439, "iss": "https://replit.com/oidc", "sub": "48531002", "email": "marco@lanzara.eu", "at_hash": "ULFFV2r1H9HpeXPMBm9Pjg", "username": "marco370", "auth_time": 1760194438, "last_name": "Lanzara", "first_name": "Marco"}, "expires_at": 1760198039, "access_token": "zqt-2nhoCJPqQE3Q3h8oEf5svEfbGlUP5oF7agsG4VH", "refresh_token": "92JyqY20XUAnkFrjwl4zrwldG_B0wCHrloL8BGTHwUz"}}} 2025-10-18 14:54:08 9R3eXldzJgCJtvRidjnATOHleQqU-VPm {"cookie": {"path": "/", "secure": true, "expires": "2025-10-18T15:05:15.530Z", "httpOnly": true, "originalMaxAge": 604800000}, "passport": {"user": {"claims": {"aud": "6d543d2c-20b9-4ea6-93fe-70fe9b1d9f80", "exp": 1760198715, "iat": 1760195115, "iss": "https://test-mock-oidc.replit.app/", "jti": "2638b26901698500dad7ac25664d26fc", "sub": "menu-test-user", "role": "admin", "email": "menu@test.it", "auth_time": 1760195114, "last_name": "Tester", "first_name": "Menu"}, "expires_at": 1760198715, "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6Ijc4MDgyZTlmZjVhOTA1YjIifQ.eyJpc3MiOiJodHRwczovL3Rlc3QtbW9jay1vaWRjLnJlcGxpdC5hcHAvIiwiaWF0IjoxNzYwMTk1MTE1LCJleHAiOjE3NjAxOTg3MTUsInN1YiI6Im1lbnUtdGVzdC11c2VyIiwiZW1haWwiOiJtZW51QHRlc3QuaXQiLCJmaXJzdF9uYW1lIjoiTWVudSIsImxhc3RfbmFtZSI6IlRlc3RlciIsInJvbGUiOiJhZG1pbiJ9.FyUIOvOStYhb7IdGZmsuuZCBwGelj_UzU-pQEnXKNz9HIz_o1Esvrb1oDzef9i3gZ3DZD2QLO9oQgwY-EcJr74SzYQ-mZUWLNyXw3znOa8V5SgZd6xauovUiF27Kdhx8HY3V2eevlePVTCU_1zcy0lH6MzmrKKh6a7YYvq-v1TIabebPlM1rGuhGBq8D5HLPlnxtIpjOSuITy1alxZpj0x0mF2L1fke-wGdzOJhSpOBxebNohtfgQ5ZEcNnIF7_R4aZcA6Fxwz0hOjcOXSgtJ5Q_SHJqefpDT_RuBppZ42c_in-mx4pCl-703cg0mHTB762KuBP_6RR1Hj1pllYEaw", "refresh_token": "eyJzdWIiOiJtZW51LXRlc3QtdXNlciIsImVtYWlsIjoibWVudUB0ZXN0Lml0IiwiZmlyc3RfbmFtZSI6Ik1lbnUiLCJsYXN0X25hbWUiOiJUZXN0ZXIiLCJyb2xlIjoiYWRtaW4ifQ"}}} 2025-10-18 15:05:19 h-lYn0EHxUnWyDm0-Uw2Kpkb-Qc8YKtz {"cookie": {"path": "/", "secure": true, "expires": "2025-10-20T07:19:36.520Z", "httpOnly": true, "originalMaxAge": 604800000}, "passport": {"user": {"claims": {"aud": "6d543d2c-20b9-4ea6-93fe-70fe9b1d9f80", "exp": 1760343575, "iat": 1760339975, "iss": "https://replit.com/oidc", "sub": "48531002", "email": "marco@lanzara.eu", "at_hash": "6TmaYJVt8NoBvvHW0zODKw", "username": "marco370", "auth_time": 1760176372, "last_name": "Lanzara", "first_name": "Marco"}, "expires_at": 1760343575, "access_token": "Xa3NG-7gQ7VBePQCs-RQve8o6LR9j3ca-FUTIots4A4", "refresh_token": "b5teeGRFvjtKUZ73L2QpPtmWFC6A10CjP9u_IHWYVn8"}}} 2025-10-20 07:21:03 CGdg7w4Rx4yhNg4HzM6x83UxA7erKxcK {"cookie": {"path": "/", "secure": true, "expires": "2025-10-18T09:47:16.831Z", "httpOnly": true, "originalMaxAge": 604800000}, "passport": {"user": {"claims": {"aud": "6d543d2c-20b9-4ea6-93fe-70fe9b1d9f80", "exp": 1760179636, "iat": 1760176036, "iss": "https://replit.com/oidc", "sub": "48531002", "email": "marco@lanzara.eu", "at_hash": "UH5Ee9wj0LQVDxxlcC4xlA", "username": "marco370", "auth_time": 1760176035, "last_name": "Lanzara", "first_name": "Marco"}, "expires_at": 1760179636, "access_token": "IoFFIzDnDVvT9WVwxZh_YVpagO0mzEoTVQIrKt-BDr-", "refresh_token": "fuWRFgDokC6JmXbNt9P4ppQqMkOInRpT_uaP6KUPA6g"}}} 2025-10-18 09:47:54 sF24qvCjN9H31oy-4Qe43JaY44TUj9PE {"cookie": {"path": "/", "secure": true, "expires": "2025-10-18T09:48:05.682Z", "httpOnly": true, "originalMaxAge": 604800000}, "replit.com": {"code_verifier": "tXX4r9Lnnc4S47qzYkKHaxakmskn6bQdO2H5aCCKkgc"}, "test-mock-oidc.replit.app": {"code_verifier": "fq9U9BlmiFYq481ShXN75xVKhrA33PNWHoLNR83uitc"}} 2025-10-18 09:48:06 oWaGRXLDo4rpH0G6I6lOD5WGgvcsDs9n {"cookie": {"path": "/", "secure": true, "expires": "2025-10-18T10:56:23.918Z", "httpOnly": true, "originalMaxAge": 604800000}, "passport": {"user": {"claims": {"aud": "6d543d2c-20b9-4ea6-93fe-70fe9b1d9f80", "exp": 1760183783, "iat": 1760180183, "iss": "https://test-mock-oidc.replit.app/", "jti": "3f7e81adf85c2185fdd5c44b9120aef3", "sub": "jGUQSg", "role": "admin", "email": "refetch-cYC@test.it", "auth_time": 1760180183, "last_name": "Test", "first_name": "Refetch"}, "expires_at": 1760183783, "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6Ijc4MDgyZTlmZjVhOTA1YjIifQ.eyJpc3MiOiJodHRwczovL3Rlc3QtbW9jay1vaWRjLnJlcGxpdC5hcHAvIiwiaWF0IjoxNzYwMTgwMTgzLCJleHAiOjE3NjAxODM3ODMsInN1YiI6ImpHVVFTZyIsImVtYWlsIjoicmVmZXRjaC1jWUNAdGVzdC5pdCIsImZpcnN0X25hbWUiOiJSZWZldGNoIiwibGFzdF9uYW1lIjoiVGVzdCIsInJvbGUiOiJhZG1pbiJ9.iRNCC8Vo3ngYUYKDitOhucneKkK6fqfn6y34sLMIo47PSIxJ06cXSuj7BZd1p1kDXIjOcFcS1aW5Rsq59F2mWoCx2554olKDDSKMJ-0aRZHF5vKu1ctHdD9_6UoKCnKOkuv31GkIwUoumJBebagX764LA3dkKFvCGc44vV3GmzhFA_zxYkdLFzCdATuVY8cTG-yzZ3zIYAgrdTraTC9Xyh2It8AjULLRRVH_nqpknkWIFtOZl3PI61Mk5ak7UFi29l67-QNikreEt48sjWHh_J5J7FVlD5-LmsMEYqOyok-MXzn7ac_PRQ8CDpgOrvcwUE6OVUq0odJwiDe7w_1D9Q", "refresh_token": "eyJzdWIiOiJqR1VRU2ciLCJlbWFpbCI6InJlZmV0Y2gtY1lDQHRlc3QuaXQiLCJmaXJzdF9uYW1lIjoiUmVmZXRjaCIsImxhc3RfbmFtZSI6IlRlc3QiLCJyb2xlIjoiYWRtaW4ifQ"}}} 2025-10-18 11:00:41 rr6VHF5XVx-H_UGZLQLkpauI9ryJ7Y14 {"cookie": {"path": "/", "secure": true, "expires": "2025-10-18T10:39:18.339Z", "httpOnly": true, "originalMaxAge": 604800000}, "passport": {"user": {"claims": {"aud": "6d543d2c-20b9-4ea6-93fe-70fe9b1d9f80", "exp": 1760182757, "iat": 1760179157, "iss": "https://test-mock-oidc.replit.app/", "jti": "6db441aed924d3f8a1376a445910e73b", "sub": "xujCTTYv", "role": "admin", "email": "assign-test-l71q@vigilanza.it", "auth_time": 1760179157, "last_name": "Test", "first_name": "Assignment"}, "expires_at": 1760182757, "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6Ijc4MDgyZTlmZjVhOTA1YjIifQ.eyJpc3MiOiJodHRwczovL3Rlc3QtbW9jay1vaWRjLnJlcGxpdC5hcHAvIiwiaWF0IjoxNzYwMTc5MTU3LCJleHAiOjE3NjAxODI3NTcsInN1YiI6Inh1akNUVFl2IiwiZW1haWwiOiJhc3NpZ24tdGVzdC1sNzFxQHZpZ2lsYW56YS5pdCIsImZpcnN0X25hbWUiOiJBc3NpZ25tZW50IiwibGFzdF9uYW1lIjoiVGVzdCIsInJvbGUiOiJhZG1pbiJ9.HQm4qNaItsrIa84yPFJMGy_J2_B9DvB8jiLqVC8NkKXow2EgLnj1nsBkBueDs_S1Waa4ptAHpNfopEHzgVVCs3lk5YZG2OjK4-ws-O7sC8HiCQ0r0Dk6UATNbxYhGZb-7LPCzrwSitWESSX21Nz9yDAuYfUIdByz0BEXDWfKTXHvjTaeamLqj-nIvsgl4w9oq3hrWS6cQOLtKAJZekUHGvDkyy8xQprPGLApcldY0uQAYdDZ6HbWg3eVgKpP8pQ6jJq3580cXimW-NhGpsbKQeDyi-149k9glREamgfw4r1GwTyUlpZkQi4mDbGOttLdQLD9sZTK4rCLmbBRLhkTOA", "refresh_token": "eyJzdWIiOiJ4dWpDVFRZdiIsImVtYWlsIjoiYXNzaWduLXRlc3QtbDcxcUB2aWdpbGFuemEuaXQiLCJmaXJzdF9uYW1lIjoiQXNzaWdubWVudCIsImxhc3RfbmFtZSI6IlRlc3QiLCJyb2xlIjoiYWRtaW4ifQ"}}} 2025-10-18 10:45:07 -NyLj_NDThlkVS_V1S3wEscq70x8tRNG {"cookie": {"path": "/", "secure": true, "expires": "2025-10-18T10:46:50.670Z", "httpOnly": true, "originalMaxAge": 604800000}, "passport": {"user": {"claims": {"aud": "6d543d2c-20b9-4ea6-93fe-70fe9b1d9f80", "exp": 1760183210, "iat": 1760179610, "iss": "https://test-mock-oidc.replit.app/", "jti": "eb3cd3d5cf59b547a03194ee2324b94a", "sub": "K4vWdf31", "role": "admin", "email": "fix-test-iq8w@vigilanza.it", "auth_time": 1760179610, "last_name": "User", "first_name": "FixTest"}, "expires_at": 1760183210, "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6Ijc4MDgyZTlmZjVhOTA1YjIifQ.eyJpc3MiOiJodHRwczovL3Rlc3QtbW9jay1vaWRjLnJlcGxpdC5hcHAvIiwiaWF0IjoxNzYwMTc5NjEwLCJleHAiOjE3NjAxODMyMTAsInN1YiI6Iks0dldkZjMxIiwiZW1haWwiOiJmaXgtdGVzdC1pcTh3QHZpZ2lsYW56YS5pdCIsImZpcnN0X25hbWUiOiJGaXhUZXN0IiwibGFzdF9uYW1lIjoiVXNlciIsInJvbGUiOiJhZG1pbiJ9.wdegIwgmTZKonTDopkHaFFnNL0yyWOdDjQrR9ad-WuJuZqzDr5NCMfwHFZORJy_ZND9P21DU1_M8O2V5eUNPV4OYFE2IdExsjFwnLRmjRf1yp9stiL6-Gq-p3Kzyipb-xEAnhLQc0MRPT1Ggcz4K9OyvAytS8Tpon0JmGenO4qJRf4eHhuVkfADDW0EJCPzuzzy87lNf1qW59bB6-zoF509XW0EbvMOpYQYWvF_uE5B29HjBErZNFDZubeh4NTYdS27kJ76mgQhAWYhl1HKbk31OngXxB6wKOV3lxxvJxSHDjszwYlhDzPSjSU9Z7b9vh0QFgPCoxoQmBfk0SWHYYw", "refresh_token": "eyJzdWIiOiJLNHZXZGYzMSIsImVtYWlsIjoiZml4LXRlc3QtaXE4d0B2aWdpbGFuemEuaXQiLCJmaXJzdF9uYW1lIjoiRml4VGVzdCIsImxhc3RfbmFtZSI6IlVzZXIiLCJyb2xlIjoiYWRtaW4ifQ"}}} 2025-10-18 10:54:13 qHdexxU_vkm0SANJWvqXEsBvmGKnxktG {"cookie": {"path": "/", "secure": true, "expires": "2025-10-18T10:10:40.581Z", "httpOnly": true, "originalMaxAge": 604800000}, "passport": {"user": {"claims": {"aud": "6d543d2c-20b9-4ea6-93fe-70fe9b1d9f80", "exp": 1760181039, "iat": 1760177439, "iss": "https://test-mock-oidc.replit.app/", "jti": "42ef5883a7ed0f48274417a33674620a", "sub": "cS6VwdUj", "role": "admin", "email": "final-test-T6pt@vigilanza.it", "auth_time": 1760177439, "last_name": "Test", "first_name": "Final"}, "expires_at": 1760181039, "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6Ijc4MDgyZTlmZjVhOTA1YjIifQ.eyJpc3MiOiJodHRwczovL3Rlc3QtbW9jay1vaWRjLnJlcGxpdC5hcHAvIiwiaWF0IjoxNzYwMTc3NDM5LCJleHAiOjE3NjAxODEwMzksInN1YiI6ImNTNlZ3ZFVqIiwiZW1haWwiOiJmaW5hbC10ZXN0LVQ2cHRAdmlnaWxhbnphLml0IiwiZmlyc3RfbmFtZSI6IkZpbmFsIiwibGFzdF9uYW1lIjoiVGVzdCIsInJvbGUiOiJhZG1pbiJ9.vEB2tmJLEcLBbHrGrvVoJZzgiU2tiBAcRiYSRYq9qyPfFbbIhkgZUHTPnpKmpsbIzHJm0ngBMUUu7YQsGOAYr_AxpA3u9OLPnYJSmBnCrYGP1hTjhpQqU6DPKZh9DGi0yn8xRt1Jy9wO4V8tLXyOYy46GmxDdq3aH0ZQC-ateHuKUgz0RMeuNS-_IMGvxcS4A9fJgGC0nNJDFpfuBRdOJqIVAgRef4A4QbbzWg-jKVi2SbdIhrJWWhirpoNM-6kfBO8K6ELHddApdlzDckGrZbAe6ZNcY8p23qLYlF8ecIfAr0LtZpXwQFkCikl43WpPpr4TTKOlchyhrz8d0wNWKQ", "refresh_token": "eyJzdWIiOiJjUzZWd2RVaiIsImVtYWlsIjoiZmluYWwtdGVzdC1UNnB0QHZpZ2lsYW56YS5pdCIsImZpcnN0X25hbWUiOiJGaW5hbCIsImxhc3RfbmFtZSI6IlRlc3QiLCJyb2xlIjoiYWRtaW4ifQ"}}} 2025-10-18 10:14:16 wSmAm4Srk2KEuQ01VGmNE0Vq3zT0eCaR {"cookie": {"path": "/", "secure": true, "expires": "2025-10-18T09:59:42.800Z", "httpOnly": true, "originalMaxAge": 604800000}, "passport": {"user": {"claims": {"aud": "6d543d2c-20b9-4ea6-93fe-70fe9b1d9f80", "exp": 1760180382, "iat": 1760176782, "iss": "https://test-mock-oidc.replit.app/", "jti": "314219805b34fb5c71c433e7daac2ccd", "sub": "vCRhJG-V", "role": "admin", "email": "admin-UNbw8C@vigilanza.it", "auth_time": 1760176781, "last_name": "Rossi", "first_name": "Mario"}, "expires_at": 1760180382, "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6Ijc4MDgyZTlmZjVhOTA1YjIifQ.eyJpc3MiOiJodHRwczovL3Rlc3QtbW9jay1vaWRjLnJlcGxpdC5hcHAvIiwiaWF0IjoxNzYwMTc2NzgyLCJleHAiOjE3NjAxODAzODIsInN1YiI6InZDUmhKRy1WIiwiZW1haWwiOiJhZG1pbi1VTmJ3OENAdmlnaWxhbnphLml0IiwiZmlyc3RfbmFtZSI6Ik1hcmlvIiwibGFzdF9uYW1lIjoiUm9zc2kiLCJyb2xlIjoiYWRtaW4ifQ.KHf-xmZ1NSCwTMgeHJmrPJmm7Bt3T18d-i23kCtnt2TlQtPy1L_td0wgewr-UBeceMb0omMtOevDK6406dqmV_Xqkm6WPRhDtvXgsaQaDL-eg_ito2kkTvJQdD9peOsTTvQ1BVwQPW5XFGRsvs8293SrzWoOs-eiQqw-zbQ36HzrBiGCIy7-L40Bs0_L9Gpx2BXQVk2UurB9shY_RHqlygzDWioHrvjtjoH3CNcSYuCosoW_WQLvEB0E9Etw561G1mynUk8WvA11owdOOdfIodnuA683JTaIo0QFttavPytwufBlPO6RGPM1wQ43R32BOLF79Nsv6VQcPbOaGPvpPA", "refresh_token": "eyJzdWIiOiJ2Q1JoSkctViIsImVtYWlsIjoiYWRtaW4tVU5idzhDQHZpZ2lsYW56YS5pdCIsImZpcnN0X25hbWUiOiJNYXJpbyIsImxhc3RfbmFtZSI6IlJvc3NpIiwicm9sZSI6ImFkbWluIn0"}}} 2025-10-18 10:00:30 aTDDzJwwmT3UbBAN5TASdAZPLMAAXopj {"cookie": {"path": "/", "secure": true, "expires": "2025-10-18T10:17:37.663Z", "httpOnly": true, "originalMaxAge": 604800000}, "passport": {"user": {"claims": {"aud": "6d543d2c-20b9-4ea6-93fe-70fe9b1d9f80", "exp": 1760181456, "iat": 1760177856, "iss": "https://test-mock-oidc.replit.app/", "jti": "9b777e0d39bd576a633b45ba3fcb76f7", "sub": "IDxjtq9A", "role": "admin", "email": "final-zod-wxYt@vigilanza.it", "auth_time": 1760177856, "last_name": "Test", "first_name": "Zod"}, "expires_at": 1760181456, "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6Ijc4MDgyZTlmZjVhOTA1YjIifQ.eyJpc3MiOiJodHRwczovL3Rlc3QtbW9jay1vaWRjLnJlcGxpdC5hcHAvIiwiaWF0IjoxNzYwMTc3ODU2LCJleHAiOjE3NjAxODE0NTYsInN1YiI6IklEeGp0cTlBIiwiZW1haWwiOiJmaW5hbC16b2Qtd3hZdEB2aWdpbGFuemEuaXQiLCJmaXJzdF9uYW1lIjoiWm9kIiwibGFzdF9uYW1lIjoiVGVzdCIsInJvbGUiOiJhZG1pbiJ9.xLN3sEzJk5mrVfs9xUCQ1zIHs6efkBmHFTtUZZ2SS6w-1jd9d6dzYSkIhY41MZnTQgUd664UdeAMKJoT0qjx2xOEFzeTPpp2bPuVmCqQT41zjU1U5j1sGIpcuiAKZOiBDDwsmd_92BmhpJYim-fKL2ICu4VCSzhqedrN2v4i6cGWrt9_GTr9M8Fn4IbmxCdjtv4_8HZuoJOZOBQGu4lsRHk2_EAwARVxTQYn-NVMxgLRhwc3NertTEzS_mtr0IYtDg_ZD4EXuP5d3LOuLeamSD5T6I-tY3_ojg57PxUysWy-sju0OEY9qpD8WiZhZJx7IT8xoE3NT_6ge1ll64HdEA", "refresh_token": "eyJzdWIiOiJJRHhqdHE5QSIsImVtYWlsIjoiZmluYWwtem9kLXd4WXRAdmlnaWxhbnphLml0IiwiZmlyc3RfbmFtZSI6IlpvZCIsImxhc3RfbmFtZSI6IlRlc3QiLCJyb2xlIjoiYWRtaW4ifQ"}}} 2025-10-18 10:19:36 rBOv-IOJDsfLpoqpD2dULNNIXRNVIS6Y {"cookie": {"path": "/", "secure": true, "expires": "2025-10-18T10:23:07.251Z", "httpOnly": true, "originalMaxAge": 604800000}, "passport": {"user": {"claims": {"aud": "6d543d2c-20b9-4ea6-93fe-70fe9b1d9f80", "exp": 1760181786, "iat": 1760178186, "iss": "https://test-mock-oidc.replit.app/", "jti": "cf4d4c31d279a71c40b28e5491d85763", "sub": "JMGdwYph", "role": "admin", "email": "refine-fix-sigB@vigilanza.it", "auth_time": 1760178186, "last_name": "Fix", "first_name": "Refine"}, "expires_at": 1760181786, "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6Ijc4MDgyZTlmZjVhOTA1YjIifQ.eyJpc3MiOiJodHRwczovL3Rlc3QtbW9jay1vaWRjLnJlcGxpdC5hcHAvIiwiaWF0IjoxNzYwMTc4MTg2LCJleHAiOjE3NjAxODE3ODYsInN1YiI6IkpNR2R3WXBoIiwiZW1haWwiOiJyZWZpbmUtZml4LXNpZ0JAdmlnaWxhbnphLml0IiwiZmlyc3RfbmFtZSI6IlJlZmluZSIsImxhc3RfbmFtZSI6IkZpeCIsInJvbGUiOiJhZG1pbiJ9.i8yCJFN_Uoc3H9L7VD9FtiIuAitsG6LQAbYQm51hsQQJabSgmQ2FNB-dCBYRQiwz_-vbiFSsyJf8VxGsqvcyST8PNGQx3wdrbx0eZrqtXAS1WDOmmR1kC5vwzSsk1qOW9Hcu9G_hGBigwor5uHWZVhrONoTH2C8cqz40QECDz58Vyj-tfEY-vxDVMaeOoz3qPvrtIEUwXwVDxfkq69CQnLngJkW7QBouwaw5AzmS6ZZsq3wuzHb5hO44wCNaqH61T_n_PIvE89aMS0UZ9PIjDrO4WC_PJ6f4HAbijxfXE5CV2MJf7kMffsIyBoW8CpclP7Evic6DVtc9sAzMO279Hw", "refresh_token": "eyJzdWIiOiJKTUdkd1lwaCIsImVtYWlsIjoicmVmaW5lLWZpeC1zaWdCQHZpZ2lsYW56YS5pdCIsImZpcnN0X25hbWUiOiJSZWZpbmUiLCJsYXN0X25hbWUiOiJGaXgiLCJyb2xlIjoiYWRtaW4ifQ"}}} 2025-10-18 10:26:27 O4cjg1auQoYPvA9kIeugk2b-7uwsbxSU {"cookie": {"path": "/", "secure": true, "expires": "2025-10-18T10:28:18.421Z", "httpOnly": true, "originalMaxAge": 604800000}, "passport": {"user": {"claims": {"aud": "6d543d2c-20b9-4ea6-93fe-70fe9b1d9f80", "exp": 1760182097, "iat": 1760178497, "iss": "https://test-mock-oidc.replit.app/", "jti": "b1b6c1050ccfca9db2f8adcbecfd3901", "sub": "eVS7usSc", "role": "admin", "email": "debug-IoeB@test.it", "auth_time": 1760178497, "last_name": "User", "first_name": "Debug"}, "expires_at": 1760182097, "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6Ijc4MDgyZTlmZjVhOTA1YjIifQ.eyJpc3MiOiJodHRwczovL3Rlc3QtbW9jay1vaWRjLnJlcGxpdC5hcHAvIiwiaWF0IjoxNzYwMTc4NDk3LCJleHAiOjE3NjAxODIwOTcsInN1YiI6ImVWUzd1c1NjIiwiZW1haWwiOiJkZWJ1Zy1Jb2VCQHRlc3QuaXQiLCJmaXJzdF9uYW1lIjoiRGVidWciLCJsYXN0X25hbWUiOiJVc2VyIiwicm9sZSI6ImFkbWluIn0.pUWo5lXHt17hDU6XQrN_jNkdpfDra9OsJbSxGCuiiOnWXkD7isSGQEjIHgKdwHIqBro3Ss76Yvjm3or5iHIqxOXU6LY8E2u31WxgDtnX0Y-rhvguN7rpLJIYkSTMvezwcXY4rdtzPiT2NmdN1HgdODqfsETeJr1Itk9qO8iyJJDQSwRwzfwvscWRE3O8hhF6r0sRjioXUpxH_myqgdfrlTheyzjlnLM2ESsFUkV9UrH-YxOusgcuS-BWusOOZjK2nL8L2N2jJIbbqYwgtyZOXK8d_U8Zz1CF1JIpsLder9ql4XDiI9bvTrOVEkJ_dy15DM0GfS3dJhEb74ibkwPVTQ", "refresh_token": "eyJzdWIiOiJlVlM3dXNTYyIsImVtYWlsIjoiZGVidWctSW9lQkB0ZXN0Lml0IiwiZmlyc3RfbmFtZSI6IkRlYnVnIiwibGFzdF9uYW1lIjoiVXNlciIsInJvbGUiOiJhZG1pbiJ9"}}} 2025-10-18 10:29:53 sqnKaJZhmGqrBQ0mVupW1z_-HeqPSv9b {"cookie": {"path": "/", "secure": true, "expires": "2025-10-18T15:50:29.528Z", "httpOnly": true, "originalMaxAge": 604800000}, "passport": {"user": {"claims": {"aud": "6d543d2c-20b9-4ea6-93fe-70fe9b1d9f80", "exp": 1760201428, "iat": 1760197828, "iss": "https://test-mock-oidc.replit.app/", "jti": "61a7a06f540598b0fe43bd089b85683f", "sub": "admin-test-2", "email": "admin2@test.com", "auth_time": 1760197828, "last_name": "Test", "first_name": "Admin"}, "expires_at": 1760201428, "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6Ijc4MDgyZTlmZjVhOTA1YjIifQ.eyJpc3MiOiJodHRwczovL3Rlc3QtbW9jay1vaWRjLnJlcGxpdC5hcHAvIiwiaWF0IjoxNzYwMTk3ODI4LCJleHAiOjE3NjAyMDE0MjgsInN1YiI6ImFkbWluLXRlc3QtMiIsImVtYWlsIjoiYWRtaW4yQHRlc3QuY29tIiwiZmlyc3RfbmFtZSI6IkFkbWluIiwibGFzdF9uYW1lIjoiVGVzdCJ9.OddLXmyAQJND5-38ipitOCceqONCcvfpu-TfCH2QlVg4lOzJ5gL6HwFOk-OKyipCn0BUUHDEthftf27wo60gYd5WkgUe0UlaFEdjZGn9dEHFaHkuuB6_ShtDDRkGExwY2OT2DqqR1AVSFj228r6QhUaJMedgP6U753hcGtwCoAYPkqiXGQDyKL6TlF3tFShxFpSNoUKxzbgmiyRYCcFgQZwdeiG_pFryquzuOTjeYSn1ekj_ayG4O35Sgavglx9m6js_78ND1x2TB_jz02IyA5T6kq1mz6oQP2B44ATFu-3WClQX4y4CuZyhkAZ-jhvSufnJSHmIWgHHkF8mZEa1Jw", "refresh_token": "eyJzdWIiOiJhZG1pbi10ZXN0LTIiLCJlbWFpbCI6ImFkbWluMkB0ZXN0LmNvbSIsImZpcnN0X25hbWUiOiJBZG1pbiIsImxhc3RfbmFtZSI6IlRlc3QifQ"}}} 2025-10-18 15:50:33 CTsWAmVjRCDIeJWmv2gu3EByl_nNK1Er {"cookie": {"path": "/", "secure": true, "expires": "2025-10-18T15:22:48.261Z", "httpOnly": true, "originalMaxAge": 604800000}, "passport": {"user": {"claims": {"aud": "6d543d2c-20b9-4ea6-93fe-70fe9b1d9f80", "exp": 1760199767, "iat": 1760196167, "iss": "https://test-mock-oidc.replit.app/", "jti": "deec8b729995ac3f71974438f94ba6bb", "sub": "security-test-admin", "email": "security-admin@test.it", "auth_time": 1760196167, "last_name": "Admin", "first_name": "Security"}, "expires_at": 1760199767, "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6Ijc4MDgyZTlmZjVhOTA1YjIifQ.eyJpc3MiOiJodHRwczovL3Rlc3QtbW9jay1vaWRjLnJlcGxpdC5hcHAvIiwiaWF0IjoxNzYwMTk2MTY3LCJleHAiOjE3NjAxOTk3NjcsInN1YiI6InNlY3VyaXR5LXRlc3QtYWRtaW4iLCJlbWFpbCI6InNlY3VyaXR5LWFkbWluQHRlc3QuaXQiLCJmaXJzdF9uYW1lIjoiU2VjdXJpdHkiLCJsYXN0X25hbWUiOiJBZG1pbiJ9.SrpW_aZZMcZAS-jYZU4MnUGUdDSCVb81qMiC3yATh5oBcPYpmxCKlpZS-iOLXViBSBnIsYyeJJwynsFPbZn9yv57Vxhi9PEz5EndF99yMMXYngSw6tQXBhTKo51PjssXEbRYJ6_MdCpWoPLVOTYN9mvAoTvDHmT5GiVApxsS0ksEtAIDc9dev0wSw2o2IhXh4Sz4Ck6_29a0RYqyVffXh03qjk8zrpk3TQtUJxP9J6x6WmvAfxWoYsMEq8OWxXxUW3YgenJuHghv4P3BSOPMlF21_jX90xVbniorkycBqjKAAsLQIOsaiwN4xbV97vb89gqnmoafU3x66XNczbYf3A", "refresh_token": "eyJzdWIiOiJzZWN1cml0eS10ZXN0LWFkbWluIiwiZW1haWwiOiJzZWN1cml0eS1hZG1pbkB0ZXN0Lml0IiwiZmlyc3RfbmFtZSI6IlNlY3VyaXR5IiwibGFzdF9uYW1lIjoiQWRtaW4ifQ"}}} 2025-10-18 15:23:14 rSR1OAJ1n-2EJf4uKVhr7ZEvMT7drJZY {"cookie": {"path": "/", "secure": true, "expires": "2025-10-18T15:24:32.968Z", "httpOnly": true, "originalMaxAge": 604800000}, "passport": {"user": {"claims": {"aud": "6d543d2c-20b9-4ea6-93fe-70fe9b1d9f80", "exp": 1760199872, "iat": 1760196272, "iss": "https://test-mock-oidc.replit.app/", "jti": "a84ed05c9dfee4cea533cc8450efa714", "sub": "marco-lanzara-admin", "email": "marco@lanzara.eu", "auth_time": 1760196272, "last_name": "Lanzara", "first_name": "Marco"}, "expires_at": 1760199872, "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6Ijc4MDgyZTlmZjVhOTA1YjIifQ.eyJpc3MiOiJodHRwczovL3Rlc3QtbW9jay1vaWRjLnJlcGxpdC5hcHAvIiwiaWF0IjoxNzYwMTk2MjcyLCJleHAiOjE3NjAxOTk4NzIsInN1YiI6Im1hcmNvLWxhbnphcmEtYWRtaW4iLCJlbWFpbCI6Im1hcmNvQGxhbnphcmEuZXUiLCJmaXJzdF9uYW1lIjoiTWFyY28iLCJsYXN0X25hbWUiOiJMYW56YXJhIn0.fZeD9geXmiTH_ZHdVq8Up2seOaVQN-41fAPhxc0jNy3CMKwcAJ5qPTLBu0xRfmd1HPBU_r08aD1r0SDQIi5zi7ym29H1mIuxwJ5uVsTRzwESwvJrwEMZaQpZeHoXxNZY5eWdHPF6I9g4GOoSd2OxPr3byFXLT5s2gm_B4aUeTjloQv39a1c9BAZvD7LKWIrln2ucrlLlCpFX1jHJCrlG5uCbUDdPTNSPUtUBQ1STyeB2AFcRtCGHChl7HKr7_WCLJO6kyxmTdKuQhz9NACeLJsDCQRbCZz1Wk3XX69djsYbye1t1yZqSveAW5gu9nRVwb-nz_S0PmRR741RWljUqPA", "refresh_token": "eyJzdWIiOiJtYXJjby1sYW56YXJhLWFkbWluIiwiZW1haWwiOiJtYXJjb0BsYW56YXJhLmV1IiwiZmlyc3RfbmFtZSI6Ik1hcmNvIiwibGFzdF9uYW1lIjoiTGFuemFyYSJ9"}}} 2025-10-18 15:24:37 8RpUruKQx6G5UgL98xG4h_PD8MME56kT {"cookie": {"path": "/", "secure": true, "expires": "2025-10-18T15:18:57.242Z", "httpOnly": true, "originalMaxAge": 604800000}, "passport": {"user": {"claims": {"aud": "6d543d2c-20b9-4ea6-93fe-70fe9b1d9f80", "exp": 1760199536, "iat": 1760195936, "iss": "https://test-mock-oidc.replit.app/", "jti": "c3aca2826c2b6b6dc4bd3c864d622b12", "sub": "marco-admin", "email": "marco@lanzara.eu", "auth_time": 1760195936, "last_name": "Lanzara", "first_name": "Marco"}, "expires_at": 1760199536, "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6Ijc4MDgyZTlmZjVhOTA1YjIifQ.eyJpc3MiOiJodHRwczovL3Rlc3QtbW9jay1vaWRjLnJlcGxpdC5hcHAvIiwiaWF0IjoxNzYwMTk1OTM2LCJleHAiOjE3NjAxOTk1MzYsInN1YiI6Im1hcmNvLWFkbWluIiwiZW1haWwiOiJtYXJjb0BsYW56YXJhLmV1IiwiZmlyc3RfbmFtZSI6Ik1hcmNvIiwibGFzdF9uYW1lIjoiTGFuemFyYSJ9.rZHKW6NJfYB8zOD_HN_ynHAFSprCoND7IzQ8rvugxS8kZn67JkBbHnD2vrkoBQk6XS0yj8-Fn__riz41cqzCJFzMHOzQNOJvj4BJyH8ss8gftQx4L63fb3IrBw21GYfQXx9BICilnPUB9gd9vHgAL1nQlSxd4Szg9VyKwLdKC4I_qClxI42JasaZcur1VBsz--c3J2zo-ia1yJeUGChrxBRodbvjczrlEWEuKlaZsqnx0L7fMLyl-7M_rdEtJQS2CEIR9lwYu-5Z7N55XQpcdr2qMc-Okjp58u_rHQZQOVm4t35eKpNS_Vdou80fjKjkCyN_e40BBZhV2nIDlSd9Vg", "refresh_token": "eyJzdWIiOiJtYXJjby1hZG1pbiIsImVtYWlsIjoibWFyY29AbGFuemFyYS5ldSIsImZpcnN0X25hbWUiOiJNYXJjbyIsImxhc3RfbmFtZSI6IkxhbnphcmEifQ"}}} 2025-10-18 15:20:06 LplSh1-TmAlPl9VqBYRZOmQhHAlFkNtf {"cookie": {"path": "/", "secure": true, "expires": "2025-10-18T15:48:20.085Z", "httpOnly": true, "originalMaxAge": 604800000}, "passport": {"user": {"claims": {"aud": "6d543d2c-20b9-4ea6-93fe-70fe9b1d9f80", "exp": 1760201299, "iat": 1760197699, "iss": "https://test-mock-oidc.replit.app/", "jti": "518e0a1c09594f15a5f2dc183738f1b5", "sub": "admin-test", "email": "admin@test.com", "auth_time": 1760197699, "last_name": "Test", "first_name": "Admin"}, "expires_at": 1760201299, "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6Ijc4MDgyZTlmZjVhOTA1YjIifQ.eyJpc3MiOiJodHRwczovL3Rlc3QtbW9jay1vaWRjLnJlcGxpdC5hcHAvIiwiaWF0IjoxNzYwMTk3Njk5LCJleHAiOjE3NjAyMDEyOTksInN1YiI6ImFkbWluLXRlc3QiLCJlbWFpbCI6ImFkbWluQHRlc3QuY29tIiwiZmlyc3RfbmFtZSI6IkFkbWluIiwibGFzdF9uYW1lIjoiVGVzdCJ9.yYSJEWeKNj6UbT77sak5rgKaGHe8QFINKsW7vRoFpCENQGsbgo7DofYaiWMHzoYhhZkBNyT1FwydU53pjnr4UNVjKZpjqiN0MI8o2XiUK2J9fmerwkMVyihPOJsInE909eF6NYlaAQKuyEPNATRnd15VBXFHL9yo8o9CiaNQSpX1uwJh8NZVxOCShas5uGVuvSTjIApVFauI7eCrbPkUZIygWzGZ0HkattdvQGTmLvuAbmQqptHadZCBUTdg7Sh2SCnQBTgzR6-9fsMMTWoP-4fXRQSojeH1ioxE4z6LCvupCyALEQkL8z4LPmKvjOgbzLAuop9ZIhv0NRg-Pjbt2Q", "refresh_token": "eyJzdWIiOiJhZG1pbi10ZXN0IiwiZW1haWwiOiJhZG1pbkB0ZXN0LmNvbSIsImZpcnN0X25hbWUiOiJBZG1pbiIsImxhc3RfbmFtZSI6IlRlc3QifQ"}}} 2025-10-18 15:48:47 YfwL6PA7Xv2fL1R4Saj7uVlxWClGbCj_ {"cookie": {"path": "/", "secure": true, "expires": "2025-10-18T14:51:13.614Z", "httpOnly": true, "originalMaxAge": 604800000}} 2025-10-18 14:51:16 i1-TNkwzaiBtwt7prUEQc0IlverS_FB5 {"cookie": {"path": "/", "secure": true, "expires": "2025-10-18T09:55:07.280Z", "httpOnly": true, "originalMaxAge": 604800000}, "passport": {"user": {"claims": {"aud": "6d543d2c-20b9-4ea6-93fe-70fe9b1d9f80", "exp": 1760180106, "iat": 1760176506, "iss": "https://test-mock-oidc.replit.app/", "jti": "8ed556ffcd8e0b7c03f612e8699504dc", "sub": "test-admin-001", "email": "admin@vigilanza.test", "auth_time": 1760176506, "last_name": "Admin", "first_name": "Test"}, "expires_at": 1760180106, "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6Ijc4MDgyZTlmZjVhOTA1YjIifQ.eyJpc3MiOiJodHRwczovL3Rlc3QtbW9jay1vaWRjLnJlcGxpdC5hcHAvIiwiaWF0IjoxNzYwMTc2NTA2LCJleHAiOjE3NjAxODAxMDYsInN1YiI6InRlc3QtYWRtaW4tMDAxIiwiZW1haWwiOiJhZG1pbkB2aWdpbGFuemEudGVzdCIsImZpcnN0X25hbWUiOiJUZXN0IiwibGFzdF9uYW1lIjoiQWRtaW4ifQ.WmdnfET4FTruZT7cL4qWxPccjGmPwjIkRen_xd1JXhCaqE8W99MeATkMArt4kbKJQZ8hrorWtRpZ5iOzl8563eybH7xufLwfPTjD6gR5IPYj2eyj69yzs0El2_hjJaUkTHz1qRSyxK815PAQ8-qxt-qW_iWl2DUeVgnYSZpu2ZpIEdhZdsDOly4mOvCtm6Y3wpTzAOLaQmO8dnJHfiD6L1xmCU7OB1KkVwnC74GZYe4rU6dwQbGc9dz513U2sL9eviCwZkT69-W4cM4hbooA9Ik5WVHlwUTs8mFnDJN2IqN_jxei97cY1c0ahibM2JN7wJRE0gz2C6w1kQJhldFNoA", "refresh_token": "eyJzdWIiOiJ0ZXN0LWFkbWluLTAwMSIsImVtYWlsIjoiYWRtaW5AdmlnaWxhbnphLnRlc3QiLCJmaXJzdF9uYW1lIjoiVGVzdCIsImxhc3RfbmFtZSI6IkFkbWluIn0"}}} 2025-10-18 09:55:42 -U9sF1yoO4caKgRnSqmF_MgbJpJvFQ8C {"cookie": {"path": "/", "secure": true, "expires": "2025-10-18T19:25:48.729Z", "httpOnly": true, "originalMaxAge": 604800000}, "passport": {"user": {"claims": {"aud": "6d543d2c-20b9-4ea6-93fe-70fe9b1d9f80", "exp": 1760214348, "iat": 1760210748, "iss": "https://test-mock-oidc.replit.app/", "jti": "9c53a7347cd119fce6eb7bbd02e65122", "sub": "test-admin-planning-v2", "email": "admin@planning-v2.test", "auth_time": 1760210748, "last_name": "PlanningV2", "first_name": "Admin"}, "expires_at": 1760214348, "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6Ijc4MDgyZTlmZjVhOTA1YjIifQ.eyJpc3MiOiJodHRwczovL3Rlc3QtbW9jay1vaWRjLnJlcGxpdC5hcHAvIiwiaWF0IjoxNzYwMjEwNzQ4LCJleHAiOjE3NjAyMTQzNDgsInN1YiI6InRlc3QtYWRtaW4tcGxhbm5pbmctdjIiLCJlbWFpbCI6ImFkbWluQHBsYW5uaW5nLXYyLnRlc3QiLCJmaXJzdF9uYW1lIjoiQWRtaW4iLCJsYXN0X25hbWUiOiJQbGFubmluZ1YyIn0.P9jkI_LtRrFtfLY5O3tkRalvPM9Db5Lg-s28S1-yyJpEpyZwwhtjFnJG9s4165LntdhP2E4obzXgdm0PHZGrfkBSRQM-ipzWWSEYJR_R78arB6PZZEVB2C0GsBMUrPABL3TA5wZVeIiyDkh_t8rj-TloYV4sP0nccxgtabWZZLdJqnbuzHgPEvVMVP3-TmbqJL-KiwrZpjPuSKape58JAShRq0wG47VuiASkjq1Z2URe8X9ouhNNBFQCmTEuNPyOaG7UpIaj3j3nLacfXtad_gdH6T1Bsez6LaF1WVL2YalRlrsNg0GhfOXSPw3UebLClbKm6UPaTv1qKcf43ufvRg", "refresh_token": "eyJzdWIiOiJ0ZXN0LWFkbWluLXBsYW5uaW5nLXYyIiwiZW1haWwiOiJhZG1pbkBwbGFubmluZy12Mi50ZXN0IiwiZmlyc3RfbmFtZSI6IkFkbWluIiwibGFzdF9uYW1lIjoiUGxhbm5pbmdWMiJ9"}}} 2025-10-18 19:28:10 bf_EBibyQEKJ6BzLDgQt-ixp3tjoVyAE {"cookie": {"path": "/", "secure": true, "expires": "2025-10-18T19:18:42.177Z", "httpOnly": true, "originalMaxAge": 604800000}, "passport": {"user": {"claims": {"aud": "6d543d2c-20b9-4ea6-93fe-70fe9b1d9f80", "exp": 1760213921, "iat": 1760210321, "iss": "https://test-mock-oidc.replit.app/", "jti": "92511eea1d9a22cdee4343b6d56bd014", "sub": "test-admin-planning", "email": "admin@planning.test", "auth_time": 1760210321, "last_name": "Planning", "first_name": "Admin"}, "expires_at": 1760213921, "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6Ijc4MDgyZTlmZjVhOTA1YjIifQ.eyJpc3MiOiJodHRwczovL3Rlc3QtbW9jay1vaWRjLnJlcGxpdC5hcHAvIiwiaWF0IjoxNzYwMjEwMzIxLCJleHAiOjE3NjAyMTM5MjEsInN1YiI6InRlc3QtYWRtaW4tcGxhbm5pbmciLCJlbWFpbCI6ImFkbWluQHBsYW5uaW5nLnRlc3QiLCJmaXJzdF9uYW1lIjoiQWRtaW4iLCJsYXN0X25hbWUiOiJQbGFubmluZyJ9.c4AuBsI678zxAk6rlhe4Hai5GV-A1jIHvdLfGzAbcxmSmxGE5YKlRz-LJk1dvvt980O2kfXH_j6MoedLyN9xhuYmZ4ovKrCUu0WNHH6qK977ckBJPAt1_FpMopmgPCpYcOpWupz-X1TZbR0kpWXWz5ycNTANAtUmdrDj5JYzzfli4ZAEtTAEjXMWWK0w_-ErkkFmvea8B2JLLslDVAIBK59sAQksSoDPjHY7Ww2cB4m7ykWVp4kXVNH_uW7lbHnd7wgf_XFAbW-LKzpVg37FLZv4Zi7MWwcNG_67ISR5NB6UfLzYlXZFdYuQhty-wOq_DlvtezqGmjC1ekqbcXwpBg", "refresh_token": "eyJzdWIiOiJ0ZXN0LWFkbWluLXBsYW5uaW5nIiwiZW1haWwiOiJhZG1pbkBwbGFubmluZy50ZXN0IiwiZmlyc3RfbmFtZSI6IkFkbWluIiwibGFzdF9uYW1lIjoiUGxhbm5pbmcifQ"}}} 2025-10-18 19:23:05 sIMx1lBq3K5NzCEOvdzEQ-H0ec7hks_i {"cookie": {"path": "/", "secure": true, "expires": "2025-10-18T15:56:05.693Z", "httpOnly": true, "originalMaxAge": 604800000}} 2025-10-18 15:56:09 \. -- -- Data for Name: shift_assignments; Type: TABLE DATA; Schema: public; Owner: neondb_owner -- COPY public.shift_assignments (id, shift_id, guard_id, assigned_at, confirmed_at, check_in_time, check_out_time) FROM stdin; 69698965-69f2-4167-93c3-a5d5ca38b726 4da5e14f-d0a4-46fa-a77f-58f35d55fa6d bd6451cc-2b35-49f2-9fc6-249a32892fe3 2025-10-11 10:45:03.991232 \N \N \N b333cbb8-cbad-4edb-94b6-885f8d2b30f0 855172fc-ce14-47a0-a01f-294a2cc85898 d969de12-6b2e-4922-856a-25ef7ffb4151 2025-10-11 11:00:38.786784 \N \N \N \. -- -- Data for Name: shifts; Type: TABLE DATA; Schema: public; Owner: neondb_owner -- COPY public.shifts (id, site_id, start_time, end_time, status, notes, created_at, updated_at) FROM stdin; 1bc94a2a-b48a-4e96-9da7-53ee4d68a764 7d80b4c8-77c6-4c26-8641-f8a2fbb067cc 2025-10-11 09:55:45.524 2025-10-11 09:55:45.524 planned \N 2025-10-11 09:55:50.21058 2025-10-11 09:55:50.21058 96b40beb-dac9-4369-8981-e0b011501d08 7d80b4c8-77c6-4c26-8641-f8a2fbb067cc 2025-10-12 08:00:00 2025-10-12 16:00:00 planned \N 2025-10-11 10:05:22.835039 2025-10-11 10:05:22.835039 ad5c4ddd-1491-4d02-bbde-44cb47964501 7d80b4c8-77c6-4c26-8641-f8a2fbb067cc 2025-10-11 10:09:03.219 2025-10-11 10:09:03.219 planned \N 2025-10-11 10:09:14.142048 2025-10-11 10:09:14.142048 12eeb4f4-bb02-4e26-86d6-6e681c44eb70 7d80b4c8-77c6-4c26-8641-f8a2fbb067cc 2025-10-15 09:00:00 2025-10-15 17:00:00 planned \N 2025-10-11 10:12:01.045964 2025-10-11 10:12:01.045964 d1051d76-9dcb-4947-bbcf-9748d6dec917 7d80b4c8-77c6-4c26-8641-f8a2fbb067cc 2025-10-11 10:14:00 2025-10-18 13:16:00 planned \N 2025-10-11 10:14:11.573726 2025-10-11 10:14:11.573726 0bba1222-fbf1-4b31-9a9c-2a7e1b5722ea 7d80b4c8-77c6-4c26-8641-f8a2fbb067cc 2025-10-17 10:00:00 2025-10-17 18:00:00 planned \N 2025-10-11 10:14:15.001963 2025-10-11 10:14:15.001963 7ed9101f-822c-443d-bc9a-50ecb59eb21f 7d80b4c8-77c6-4c26-8641-f8a2fbb067cc 2025-10-20 08:00:00 2025-10-20 16:00:00 planned \N 2025-10-11 10:19:34.302835 2025-10-11 10:19:34.302835 f0a16c0a-d1e9-432a-ac9b-f8ce759d2b03 7d80b4c8-77c6-4c26-8641-f8a2fbb067cc 2025-10-09 10:20:00 2025-10-12 10:20:00 planned \N 2025-10-11 10:21:03.458271 2025-10-11 10:21:03.458271 6b7876db-f358-458e-b298-1a9aa37ae092 7d80b4c8-77c6-4c26-8641-f8a2fbb067cc 2025-10-22 10:00:00 2025-10-22 18:00:00 planned \N 2025-10-11 10:25:59.585871 2025-10-11 10:25:59.585871 cd4892cc-bbdb-4248-b522-3661628f9fd1 7d80b4c8-77c6-4c26-8641-f8a2fbb067cc 2025-10-25 09:00:00 2025-10-25 17:00:00 planned \N 2025-10-11 10:29:31.629532 2025-10-11 10:29:31.629532 4da5e14f-d0a4-46fa-a77f-58f35d55fa6d 7d80b4c8-77c6-4c26-8641-f8a2fbb067cc 2025-11-01 08:00:00 2025-11-01 16:00:00 planned \N 2025-10-11 10:40:56.469271 2025-10-11 10:40:56.469271 55cde829-6d69-4865-a91b-5686a6bfdacc c46d254f-769a-4184-9b92-0bd2c7dd9468 2025-11-05 09:00:00 2025-11-05 17:00:00 planned \N 2025-10-11 10:50:13.34427 2025-10-11 10:50:13.34427 adccf142-4fe3-43b9-aaa5-8239a496b33a c46d254f-769a-4184-9b92-0bd2c7dd9468 2025-11-05 09:00:00 2025-11-05 17:00:00 planned \N 2025-10-11 10:51:53.092243 2025-10-11 10:51:53.092243 855172fc-ce14-47a0-a01f-294a2cc85898 7d80b4c8-77c6-4c26-8641-f8a2fbb067cc 2025-11-10 10:00:00 2025-11-10 18:00:00 planned \N 2025-10-11 10:59:22.833298 2025-10-11 10:59:22.833298 shift-abc-123 site-edit-456 2025-11-02 10:00:00 2025-11-01 14:00:00 completed \N 2025-10-11 15:55:02.374157 2025-10-11 15:55:42.802 \. -- -- Data for Name: site_preferences; Type: TABLE DATA; Schema: public; Owner: neondb_owner -- COPY public.site_preferences (id, site_id, guard_id, preference, priority, reason, created_at) FROM stdin; \. -- -- Data for Name: sites; Type: TABLE DATA; Schema: public; Owner: neondb_owner -- COPY public.sites (id, name, address, client_id, shift_type, min_guards, requires_armed, requires_driver_license, latitude, longitude, is_active, created_at, updated_at) FROM stdin; 76745907-a110-4765-a7c3-de87902385a9 Centro Commerciale Nord Via Roma 123, Milano \N fixed_post 1 f f \N \N t 2025-10-11 09:32:54.993576 2025-10-11 09:32:54.993576 aeaf38d4-2aa6-4fe3-b981-6c9e1a92cc18 Final Test Site Via Finale 1 \N fixed_post 2 f f \N \N t 2025-10-11 10:10:51.630603 2025-10-11 10:10:51.630603 b479db14-0a4d-4944-812e-cfdf51d234c6 Zod Test Site Via Zod 1 \N fixed_post 2 f f \N \N t 2025-10-11 10:17:56.74085 2025-10-11 10:17:56.74085 28a669ce-dcf2-45d3-ad19-dd7f0126c0ff Test Site z6X Via Test 1 \N fixed_post 2 f f \N \N t 2025-10-11 10:23:25.629625 2025-10-11 10:23:25.629625 ef1f9633-baf9-4578-8ece-aed2b9e60278 Debug Site Via Debug 1 \N fixed_post 1 f f \N \N t 2025-10-11 10:28:28.07614 2025-10-11 10:28:28.07614 c46d254f-769a-4184-9b92-0bd2c7dd9468 Site Assignment Test s_y Via Test 456 \N fixed_post 1 t f \N \N t 2025-10-11 10:47:07.798685 2025-10-11 10:47:07.798685 6ed41828-85a3-46d1-8000-038d4c943039 Refetch Site Via Test 1 \N fixed_post 1 t f \N \N t 2025-10-11 10:56:41.584119 2025-10-11 10:56:41.584119 site-edit-456 Site UPDATED Via Milano 77 \N patrol 5 t f \N \N t 2025-10-11 15:53:18.999264 2025-10-11 15:54:25.705 7d80b4c8-77c6-4c26-8641-f8a2fbb067cc Centro Commerciale Test Via Roma 123, Milano \N fixed_post 2 f f \N \N t 2025-10-11 09:32:22.875284 2025-10-11 19:55:28.047 \. -- -- Data for Name: training_courses; Type: TABLE DATA; Schema: public; Owner: neondb_owner -- COPY public.training_courses (id, guard_id, course_name, course_type, scheduled_date, completion_date, expiry_date, status, certificate_url, provider, hours, notes, created_at) FROM stdin; \. -- -- Data for Name: users; Type: TABLE DATA; Schema: public; Owner: neondb_owner -- COPY public.users (id, email, first_name, last_name, profile_image_url, role, created_at, updated_at) FROM stdin; admin001 admin@vigilanza.it Mario Rossi \N guard 2025-10-11 09:29:52.16585 2025-10-11 09:29:52.16585 test-admin-001 admin@vigilanza.test Test Admin \N guard 2025-10-11 09:55:07.018946 2025-10-11 09:55:07.018946 vCRhJG-V admin-UNbw8C@vigilanza.it Mario Rossi \N guard 2025-10-11 09:59:42.539995 2025-10-11 09:59:42.539995 RELy01vi test-jv_1@vigilanza.it Test User \N guard 2025-10-11 10:03:26.683873 2025-10-11 10:03:26.683873 cS6VwdUj final-test-T6pt@vigilanza.it Final Test \N guard 2025-10-11 10:10:40.310873 2025-10-11 10:10:40.310873 IDxjtq9A final-zod-wxYt@vigilanza.it Zod Test \N guard 2025-10-11 10:17:37.400835 2025-10-11 10:17:37.400835 JMGdwYph refine-fix-sigB@vigilanza.it Refine Fix \N guard 2025-10-11 10:23:06.994371 2025-10-11 10:23:06.994371 eVS7usSc debug-IoeB@test.it Debug User \N guard 2025-10-11 10:28:18.161956 2025-10-11 10:28:18.161956 xujCTTYv assign-test-l71q@vigilanza.it Assignment Test \N guard 2025-10-11 10:39:18.074376 2025-10-11 10:39:18.074376 K4vWdf31 fix-test-iq8w@vigilanza.it FixTest User \N guard 2025-10-11 10:46:50.407768 2025-10-11 10:46:50.407768 jGUQSg refetch-cYC@test.it Refetch Test \N guard 2025-10-11 10:56:23.656146 2025-10-11 10:56:23.656146 nav-test nav@test.it Nav Test \N admin 2025-10-11 14:44:42.051639 2025-10-11 14:47:56.327881 menu-test-user menu@test.it Menu Tester \N guard 2025-10-11 15:05:15.256762 2025-10-11 15:05:15.256762 role-test-user roletest@vigilanza.it Role Tester \N coordinator 2025-10-11 15:19:18.363578 2025-10-11 15:20:04.305 security-test-admin security-admin@test.it Security Admin \N admin 2025-10-11 15:22:47.998495 2025-10-11 15:22:47.998495 48531002 marco@lanzara.eu Marco Lanzara \N admin 2025-10-11 09:47:16.558501 2025-10-11 15:30:30.389 admin-test admin@test.com Admin Test \N admin 2025-10-11 15:48:19.825178 2025-10-11 15:48:19.825178 admin-test-2 admin2@test.com Admin Test \N admin 2025-10-11 15:50:29.267968 2025-10-11 15:51:03.533 test-admin-planning admin@planning.test Admin Planning \N guard 2025-10-11 19:18:41.917524 2025-10-11 19:18:41.917524 test-admin-planning-v2 admin@planning-v2.test Admin PlanningV2 \N admin 2025-10-11 19:25:29.373216 2025-10-11 19:25:48.409 \. -- -- Name: absence_affected_shifts absence_affected_shifts_pkey; Type: CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.absence_affected_shifts ADD CONSTRAINT absence_affected_shifts_pkey PRIMARY KEY (id); -- -- Name: absences absences_pkey; Type: CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.absences ADD CONSTRAINT absences_pkey PRIMARY KEY (id); -- -- Name: certifications certifications_pkey; Type: CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.certifications ADD CONSTRAINT certifications_pkey PRIMARY KEY (id); -- -- Name: contract_parameters contract_parameters_contract_type_unique; Type: CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.contract_parameters ADD CONSTRAINT contract_parameters_contract_type_unique UNIQUE (contract_type); -- -- Name: contract_parameters contract_parameters_pkey; Type: CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.contract_parameters ADD CONSTRAINT contract_parameters_pkey PRIMARY KEY (id); -- -- Name: guard_constraints guard_constraints_guard_id_unique; Type: CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.guard_constraints ADD CONSTRAINT guard_constraints_guard_id_unique UNIQUE (guard_id); -- -- Name: guard_constraints guard_constraints_pkey; Type: CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.guard_constraints ADD CONSTRAINT guard_constraints_pkey PRIMARY KEY (id); -- -- Name: guards guards_badge_number_unique; Type: CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.guards ADD CONSTRAINT guards_badge_number_unique UNIQUE (badge_number); -- -- Name: guards guards_pkey; Type: CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.guards ADD CONSTRAINT guards_pkey PRIMARY KEY (id); -- -- Name: holiday_assignments holiday_assignments_pkey; Type: CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.holiday_assignments ADD CONSTRAINT holiday_assignments_pkey PRIMARY KEY (id); -- -- Name: holidays holidays_pkey; Type: CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.holidays ADD CONSTRAINT holidays_pkey PRIMARY KEY (id); -- -- Name: notifications notifications_pkey; Type: CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.notifications ADD CONSTRAINT notifications_pkey PRIMARY KEY (id); -- -- Name: sessions sessions_pkey; Type: CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.sessions ADD CONSTRAINT sessions_pkey PRIMARY KEY (sid); -- -- Name: shift_assignments shift_assignments_pkey; Type: CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.shift_assignments ADD CONSTRAINT shift_assignments_pkey PRIMARY KEY (id); -- -- Name: shifts shifts_pkey; Type: CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.shifts ADD CONSTRAINT shifts_pkey PRIMARY KEY (id); -- -- Name: site_preferences site_preferences_pkey; Type: CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.site_preferences ADD CONSTRAINT site_preferences_pkey PRIMARY KEY (id); -- -- Name: sites sites_pkey; Type: CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.sites ADD CONSTRAINT sites_pkey PRIMARY KEY (id); -- -- Name: training_courses training_courses_pkey; Type: CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.training_courses ADD CONSTRAINT training_courses_pkey PRIMARY KEY (id); -- -- Name: users users_email_unique; Type: CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.users ADD CONSTRAINT users_email_unique UNIQUE (email); -- -- Name: users users_pkey; Type: CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.users ADD CONSTRAINT users_pkey PRIMARY KEY (id); -- -- Name: IDX_session_expire; Type: INDEX; Schema: public; Owner: neondb_owner -- CREATE INDEX "IDX_session_expire" ON public.sessions USING btree (expire); -- -- Name: unique_absence_shift; Type: INDEX; Schema: public; Owner: neondb_owner -- CREATE UNIQUE INDEX unique_absence_shift ON public.absence_affected_shifts USING btree (absence_id, shift_id); -- -- Name: unique_holiday_date_year; Type: INDEX; Schema: public; Owner: neondb_owner -- CREATE UNIQUE INDEX unique_holiday_date_year ON public.holidays USING btree (date, year); -- -- Name: unique_holiday_guard; Type: INDEX; Schema: public; Owner: neondb_owner -- CREATE UNIQUE INDEX unique_holiday_guard ON public.holiday_assignments USING btree (holiday_id, guard_id); -- -- Name: unique_site_guard_preference; Type: INDEX; Schema: public; Owner: neondb_owner -- CREATE UNIQUE INDEX unique_site_guard_preference ON public.site_preferences USING btree (site_id, guard_id); -- -- Name: absence_affected_shifts absence_affected_shifts_absence_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.absence_affected_shifts ADD CONSTRAINT absence_affected_shifts_absence_id_fkey FOREIGN KEY (absence_id) REFERENCES public.absences(id) ON DELETE CASCADE; -- -- Name: absence_affected_shifts absence_affected_shifts_shift_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.absence_affected_shifts ADD CONSTRAINT absence_affected_shifts_shift_id_fkey FOREIGN KEY (shift_id) REFERENCES public.shifts(id) ON DELETE CASCADE; -- -- Name: absences absences_approved_by_users_id_fk; Type: FK CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.absences ADD CONSTRAINT absences_approved_by_users_id_fk FOREIGN KEY (approved_by) REFERENCES public.users(id); -- -- Name: absences absences_guard_id_guards_id_fk; Type: FK CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.absences ADD CONSTRAINT absences_guard_id_guards_id_fk FOREIGN KEY (guard_id) REFERENCES public.guards(id) ON DELETE CASCADE; -- -- Name: absences absences_substitute_guard_id_guards_id_fk; Type: FK CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.absences ADD CONSTRAINT absences_substitute_guard_id_guards_id_fk FOREIGN KEY (substitute_guard_id) REFERENCES public.guards(id); -- -- Name: certifications certifications_guard_id_guards_id_fk; Type: FK CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.certifications ADD CONSTRAINT certifications_guard_id_guards_id_fk FOREIGN KEY (guard_id) REFERENCES public.guards(id) ON DELETE CASCADE; -- -- Name: guard_constraints guard_constraints_guard_id_guards_id_fk; Type: FK CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.guard_constraints ADD CONSTRAINT guard_constraints_guard_id_guards_id_fk FOREIGN KEY (guard_id) REFERENCES public.guards(id) ON DELETE CASCADE; -- -- Name: guards guards_user_id_users_id_fk; Type: FK CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.guards ADD CONSTRAINT guards_user_id_users_id_fk FOREIGN KEY (user_id) REFERENCES public.users(id); -- -- Name: holiday_assignments holiday_assignments_guard_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.holiday_assignments ADD CONSTRAINT holiday_assignments_guard_id_fkey FOREIGN KEY (guard_id) REFERENCES public.guards(id) ON DELETE CASCADE; -- -- Name: holiday_assignments holiday_assignments_holiday_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.holiday_assignments ADD CONSTRAINT holiday_assignments_holiday_id_fkey FOREIGN KEY (holiday_id) REFERENCES public.holidays(id) ON DELETE CASCADE; -- -- Name: holiday_assignments holiday_assignments_shift_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.holiday_assignments ADD CONSTRAINT holiday_assignments_shift_id_fkey FOREIGN KEY (shift_id) REFERENCES public.shifts(id) ON DELETE SET NULL; -- -- Name: notifications notifications_user_id_users_id_fk; Type: FK CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.notifications ADD CONSTRAINT notifications_user_id_users_id_fk FOREIGN KEY (user_id) REFERENCES public.users(id) ON DELETE CASCADE; -- -- Name: shift_assignments shift_assignments_guard_id_guards_id_fk; Type: FK CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.shift_assignments ADD CONSTRAINT shift_assignments_guard_id_guards_id_fk FOREIGN KEY (guard_id) REFERENCES public.guards(id) ON DELETE CASCADE; -- -- Name: shift_assignments shift_assignments_shift_id_shifts_id_fk; Type: FK CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.shift_assignments ADD CONSTRAINT shift_assignments_shift_id_shifts_id_fk FOREIGN KEY (shift_id) REFERENCES public.shifts(id) ON DELETE CASCADE; -- -- Name: shifts shifts_site_id_sites_id_fk; Type: FK CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.shifts ADD CONSTRAINT shifts_site_id_sites_id_fk FOREIGN KEY (site_id) REFERENCES public.sites(id) ON DELETE CASCADE; -- -- Name: site_preferences site_preferences_guard_id_guards_id_fk; Type: FK CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.site_preferences ADD CONSTRAINT site_preferences_guard_id_guards_id_fk FOREIGN KEY (guard_id) REFERENCES public.guards(id) ON DELETE CASCADE; -- -- Name: site_preferences site_preferences_site_id_sites_id_fk; Type: FK CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.site_preferences ADD CONSTRAINT site_preferences_site_id_sites_id_fk FOREIGN KEY (site_id) REFERENCES public.sites(id) ON DELETE CASCADE; -- -- Name: sites sites_client_id_users_id_fk; Type: FK CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.sites ADD CONSTRAINT sites_client_id_users_id_fk FOREIGN KEY (client_id) REFERENCES public.users(id); -- -- Name: training_courses training_courses_guard_id_guards_id_fk; Type: FK CONSTRAINT; Schema: public; Owner: neondb_owner -- ALTER TABLE ONLY public.training_courses ADD CONSTRAINT training_courses_guard_id_guards_id_fk FOREIGN KEY (guard_id) REFERENCES public.guards(id) ON DELETE CASCADE; -- -- Name: DEFAULT PRIVILEGES FOR SEQUENCES; Type: DEFAULT ACL; Schema: public; Owner: cloud_admin -- ALTER DEFAULT PRIVILEGES FOR ROLE cloud_admin IN SCHEMA public GRANT ALL ON SEQUENCES TO neon_superuser WITH GRANT OPTION; -- -- Name: DEFAULT PRIVILEGES FOR TABLES; Type: DEFAULT ACL; Schema: public; Owner: cloud_admin -- ALTER DEFAULT PRIVILEGES FOR ROLE cloud_admin IN SCHEMA public GRANT ALL ON TABLES TO neon_superuser WITH GRANT OPTION; -- -- PostgreSQL database dump complete --