From 97c3a3d78f27a5c571c12525c9f7c1894efc0aa5 Mon Sep 17 00:00:00 2001
From: Ohsudev <76500320+Ohsudev@users.noreply.github.com>
Date: Sat, 6 Apr 2024 01:29:42 -0700
Subject: [PATCH] Modified Compliance Xcel formatting reports.
---
.../EmployeeAssignedStatus.query.xml | 12 ++
.../EmployeeAssignedStatus.sql | 4 +
.../EmployeeToLocationXcel.query.xml | 10 +
.../EmployeeToLocationXcel.sql | 12 ++
.../EmployeeToRequirementsXcel.query.xml | 10 +
.../EmployeeToRequirementsXcel.sql | 8 +
.../Employee_Assigned_Location.query.xml | 53 +++++
.../Employee_Reference_Data.query.xml | 40 ++++
.../employeeTraining.query.xml | 93 ++++++++
.../onprc_ehr_compliancedb-24.005-24.006.sql | 184 ++++++++++++++++
.../schemas/onprc_ehr_compliancedb.xml | 203 ++++++++++++++++++
.../ONPRC_EHR_ComplianceDBModule.java | 2 +-
12 files changed, 630 insertions(+), 1 deletion(-)
create mode 100644 ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeAssignedStatus.query.xml
create mode 100644 ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeAssignedStatus.sql
create mode 100644 ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeToLocationXcel.query.xml
create mode 100644 ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeToLocationXcel.sql
create mode 100644 ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeToRequirementsXcel.query.xml
create mode 100644 ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeToRequirementsXcel.sql
create mode 100644 ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/Employee_Assigned_Location.query.xml
create mode 100644 ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/Employee_Reference_Data.query.xml
create mode 100644 ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/employeeTraining.query.xml
create mode 100644 ONPRC_EHR_ComplianceDB/resources/schemas/dbscripts/sqlserver/onprc_ehr_compliancedb-24.005-24.006.sql
diff --git a/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeAssignedStatus.query.xml b/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeAssignedStatus.query.xml
new file mode 100644
index 000000000..6e5b2d1f1
--- /dev/null
+++ b/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeAssignedStatus.query.xml
@@ -0,0 +1,12 @@
+
+
+
+
+ Employee Assigned Status
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeAssignedStatus.sql b/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeAssignedStatus.sql
new file mode 100644
index 000000000..9bf3300d7
--- /dev/null
+++ b/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeAssignedStatus.sql
@@ -0,0 +1,4 @@
+
+Select value from ehr_compliancedb.employee_Reference_Data
+Where columnname = 'training_status'
+ And endDate is null
diff --git a/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeToLocationXcel.query.xml b/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeToLocationXcel.query.xml
new file mode 100644
index 000000000..866eb336f
--- /dev/null
+++ b/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeToLocationXcel.query.xml
@@ -0,0 +1,10 @@
+
+
+
+
+ Employee To Training Location PIVOT
+
+
+
+
+
diff --git a/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeToLocationXcel.sql b/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeToLocationXcel.sql
new file mode 100644
index 000000000..0bbb165e1
--- /dev/null
+++ b/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeToLocationXcel.sql
@@ -0,0 +1,12 @@
+select
+
+ coalesce(jj.location, '') as location,
+
+ jj.employeeid as employeeid
+
+
+from ehr_compliancedb.employee_assigned_location jj
+
+group by jj.employeeid, jj.location
+
+ PIVOT location by employeeid
\ No newline at end of file
diff --git a/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeToRequirementsXcel.query.xml b/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeToRequirementsXcel.query.xml
new file mode 100644
index 000000000..8786133e6
--- /dev/null
+++ b/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeToRequirementsXcel.query.xml
@@ -0,0 +1,10 @@
+
+
+
+
+ Employee To Requirement Name PIVOT
+
+
+
+
+
diff --git a/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeToRequirementsXcel.sql b/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeToRequirementsXcel.sql
new file mode 100644
index 000000000..f5bd02e94
--- /dev/null
+++ b/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/EmployeeToRequirementsXcel.sql
@@ -0,0 +1,8 @@
+select
+ jj.employeeid as employeeid,
+ coalesce(jj.requirementname, '') as requirementname
+from ehr_compliancedb.employeeTraining jj where
+ jj.employeeid in (select ss.employeeid from ehr_compliancedb.Employees ss where ss.MajorUDDS = 'OPS - ASB')
+
+group by jj.employeeid, jj.Requirementname
+ PIVOT requirementname by employeeid
diff --git a/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/Employee_Assigned_Location.query.xml b/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/Employee_Assigned_Location.query.xml
new file mode 100644
index 000000000..b31c69aa6
--- /dev/null
+++ b/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/Employee_Assigned_Location.query.xml
@@ -0,0 +1,53 @@
+
+
+
+
+ Employee Assigned Areas
+
+
+
+
+ ehr_compliancedb
+ employees
+ employeeId
+
+
+
+
+
+ ehr_compliancedb
+ employees
+ employeeId
+
+
+
+
+
+ ehr_compliancedb
+ employeeAssignedStatus
+ value
+
+
+
+ true
+
+
+
+ true
+
+
+
+ ehr
+ tasks
+ taskid
+ rowid
+
+
+
+ true
+
+
+
+
+
+
\ No newline at end of file
diff --git a/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/Employee_Reference_Data.query.xml b/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/Employee_Reference_Data.query.xml
new file mode 100644
index 000000000..48b277933
--- /dev/null
+++ b/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/Employee_Reference_Data.query.xml
@@ -0,0 +1,40 @@
+
+
+
+
+ Employee Reference Data
+
+
+
+ true
+
+
+ Host Name
+
+
+ End Date
+
+
+ true
+
+
+ Column Name
+
+
+
+
+
+
+
+
+ true
+
+
+
+ true
+
+
+
+
+
+
diff --git a/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/employeeTraining.query.xml b/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/employeeTraining.query.xml
new file mode 100644
index 000000000..55a0f2115
--- /dev/null
+++ b/ONPRC_EHR_ComplianceDB/resources/queries/EHR_ComplianceDB/employeeTraining.query.xml
@@ -0,0 +1,93 @@
+
+
+
+
+ Employee Requirement Details
+
+
+
+
+ ehr_compliancedb
+ employees
+ employeeId
+
+
+
+
+
+ true
+
+
+
+ true
+
+
+ true
+
+
+ Assigned_Status
+
+ ehr_compliancedb
+ employeeAssignedStatus
+ value
+
+
+
+
+
+
+ 9FE2BF
+
+
+
+
+
+ 6495ED
+
+
+
+
+
+ FFBF00
+
+
+
+
+
+ CD5C5C
+
+
+
+
+
+ 1F618D
+
+
+
+
+ Unit
+
+ /ONPRC/Admin/Compliance
+ ehr_compliancedb
+ unit_names
+ unit
+
+
+
+ Category
+
+ /ONPRC/Admin/Compliance
+ ehr_compliancedb
+ employeecategory
+ categoryname
+
+
+
+ true
+
+
+
+
+
+
+
diff --git a/ONPRC_EHR_ComplianceDB/resources/schemas/dbscripts/sqlserver/onprc_ehr_compliancedb-24.005-24.006.sql b/ONPRC_EHR_ComplianceDB/resources/schemas/dbscripts/sqlserver/onprc_ehr_compliancedb-24.005-24.006.sql
new file mode 100644
index 000000000..64cc8ac02
--- /dev/null
+++ b/ONPRC_EHR_ComplianceDB/resources/schemas/dbscripts/sqlserver/onprc_ehr_compliancedb-24.005-24.006.sql
@@ -0,0 +1,184 @@
+
+
+
+-- Author: R. Blasa
+-- Created: 3-21-2024
+-- Description: Stored procedure program process SciShield INitial Data
+CREATE TABLE onprc_ehr_compliancedb.EmployeeTraining_Details
+(
+ rowId INT IDENTITY(100,1) NOT NULL,
+ EmployeeId nvarchar(255) not null,
+ [requirementname] [nvarchar](3000) NULL,
+ [datecompleted] [datetime] NULL,
+ [next_training] [nvarchar](50) NULL,
+ [next_training_date] [datetime] NULL,
+ [required_training] [nchar](10) NULL,
+ [objectid] [dbo].[ENTITYID] NULL,
+ [comments] [char](500) NULL,
+ Container ENTITYID NOT NULL,
+ CreatedBy USERID,
+ Created datetime,
+ ModifiedBy USERID,
+ Modified datetime,
+ taskid entityid,
+ unit nvarchar(1000),
+ category nvarchar(1000)
+
+
+
+ CONSTRAINT PK_EmployeeTraining PRIMARY KEY (rowId)
+ );
+
+CREATE TABLE onprc_ehr_compliancedb.Employee_Reference_Data
+(
+ rowId int identity(1,1),
+ label varchar(250) NULL,
+ value varchar(255) ,
+ columnName varchar(255) NOT NULL,
+ sort_order integer null,
+ endDate datetime NULL,
+ objectid entityid
+
+ CONSTRAINT pk_compliance_employee
+
+ PRIMARY KEY (value)
+
+);
+
+
+CREATE TABLE onprc_ehr_compliancedb.Employee_Assigned_Location
+(
+ rowId int identity(1,1),
+ location varchar(500) NULL,
+ employeeid varchar(255),
+ status varchar(255) ,
+ endDate datetime NULL,
+ comments varchar(500) NULL,
+ Container ENTITYID NOT NULL,
+ CreatedBy USERID,
+ Created datetime,
+ ModifiedBy USERID,
+ Modified datetime,
+ taskid entityid,
+ sort_order integer null,
+ objectid entityid
+
+ CONSTRAINT pk_employee_location
+
+ PRIMARY KEY (objectid)
+
+);
+
+
+
+-- Author: R. Blasa
+-- Created: 2-10-2024
+
+/*
+**
+** Created by
+** Blasa 1-25-2024 Import process from ScieShield To Prime Compliance Module
+**
+** Processed codes: Null ---Not Processed
+** 1 ------ Successfully posted
+** 2 --------- invalid Employeeid
+** 3 --------- Undefined Requirement Name
+** 4--------- Already exists Compliance module
+**
+**
+**
+*/
+
+CREATE Procedure onprc_ehr_compliancedb.[p_SciShieldToPrimeProcess]
+
+
+AS
+
+
+DECLARE
+ @SearchKey Int,
+ @TempsearchKey Int,
+
+
+BEGIN
+
+ ---- Reset temp table
+
+ Delete onprc_ehr_compliancedb.SciShieldTemp
+
+
+ If @@Error <> 0
+ GoTo Err_Proc
+
+
+IF exists (Select count(*) from onprc_ehr_compliancedb.Employeetraining_Details) = 0
+BEGIN
+
+ Insert into onprc_ehr_compliancedb.Employeetraining_Details
+ (employeeid,
+ requirementname,
+ datecompleted,
+ required_training,
+ objectid,
+ container,
+ unit,
+ category,
+ comments,
+ createdby,
+ created,
+ modifiedby,
+ modified
+ )
+
+select
+ e.employeeid,
+
+
+ b.requirementname,
+
+
+ (select max(zz.date) from ehr_compliancedb.completiondates zz where zz.requirementname = b.requirementname and zz.employeeid= e.employeeid ) as completiondate,
+
+ 'yes' as required_training,
+
+ newid() as objectid,
+
+ 'CD170458-C55F-102F-9907-5107380A54BE' as container,
+
+ string_agg(e.unit, char(10)) ,
+
+ string_agg( e.category, char(10)) ,
+
+
+ (select string_agg( k.comment, char(10)) from ehr_compliancedb.completiondates k where k.requirementname = b.requirementname and k.employeeid = e.employeeid
+ And k.date in (select max(zz.date) from ehr_compliancedb.completiondates zz where zz.requirementname = b.requirementname and zz.employeeid= e.employeeid )) as comments,
+ 1007, ------ createdby
+ getdate(), ------ created
+ 1007,
+ getdate()
+
+
+from ehr_compliancedb.requirementspercategory b, ehr_compliancedb.employeeperUnit e
+Where (b.category = e.category or b.unit = e.unit )
+ And e.employeeid in (select distinct kk.employeeid from ehr_compliancedb.Employees kk where kk.enddate is null)
+
+ group by e.employeeid, b.requirementname
+
+ If @@Error <> 0
+ GoTo Err_Proc
+
+END
+
+No_Records:
+
+ RETURN 0
+
+
+Err_Proc:
+ -------Error Generated, Transfer process stopped
+ RETURN 1
+
+
+END
+
+GO
\ No newline at end of file
diff --git a/ONPRC_EHR_ComplianceDB/resources/schemas/onprc_ehr_compliancedb.xml b/ONPRC_EHR_ComplianceDB/resources/schemas/onprc_ehr_compliancedb.xml
index 3e14b18cc..28f6afc69 100644
--- a/ONPRC_EHR_ComplianceDB/resources/schemas/onprc_ehr_compliancedb.xml
+++ b/ONPRC_EHR_ComplianceDB/resources/schemas/onprc_ehr_compliancedb.xml
@@ -157,5 +157,208 @@
+
+ DETAILED
+
+ Employee Requirement Details
+ rowid
+
+
+ true
+ true
+ true
+ Key
+
+
+ Employee Id
+
+ ehr_compliancedb
+ employees
+ employeeid
+
+
+
+ Date Completed
+
+
+
+ Training Status
+
+ ehr_compliancedb
+ Employee_Reference_Data
+ value
+
+
+
+ Next Training Date
+
+
+ Required Training
+
+
+ true
+
+
+ Comments
+
+
+ false
+ true
+
+ core
+ containers
+ entityid
+
+
+
+ true
+
+
+ true
+
+
+
+ true
+
+
+ true
+
+
+ true
+
+
+ Unit
+
+ ehr_compliancedb
+ unit_names
+ unit
+
+
+
+ Category
+
+ ehr_compliancedb
+ employeecategory
+ categoryname
+
+
+
+
+ Requirement Name
+
+ ehr_compliancedb
+ requirements
+ requirementname
+
+
+
+
+
+
+
+ DETAILED
+
+ Compliance Reference Data
+ rowid
+
+
+ true
+ true
+ Key
+
+
+ true
+ Label
+
+
+ Value
+ true
+
+
+ Column Name
+
+
+ true
+ Sort Order
+
+
+ End Date
+
+
+ true
+
+
+
+
+
+ DETAILED
+
+ Employee Assigned Locations
+ rowid
+
+
+ true
+ true
+ true
+ Key
+
+
+ Employee Id
+
+ ehr_compliancedb
+ employees
+ employeeid
+
+
+
+ Assigned Locations
+
+
+
+ Training Status
+
+ ehr_compliancedb
+ Employee_Reference_Data
+ value
+
+
+
+
+ true
+
+
+ true
+
+
+ Comments
+
+
+ false
+ true
+
+ core
+ containers
+ entityid
+
+
+
+ true
+
+
+ true
+
+
+
+ true
+
+
+ true
+
+
+ true
+
+
+
+
diff --git a/ONPRC_EHR_ComplianceDB/src/org/labkey/ONPRCEHR_ComplianceDB/ONPRC_EHR_ComplianceDBModule.java b/ONPRC_EHR_ComplianceDB/src/org/labkey/ONPRCEHR_ComplianceDB/ONPRC_EHR_ComplianceDBModule.java
index 1bcde4100..b5233cb03 100644
--- a/ONPRC_EHR_ComplianceDB/src/org/labkey/ONPRCEHR_ComplianceDB/ONPRC_EHR_ComplianceDBModule.java
+++ b/ONPRC_EHR_ComplianceDB/src/org/labkey/ONPRCEHR_ComplianceDB/ONPRC_EHR_ComplianceDBModule.java
@@ -55,7 +55,7 @@ public String getName()
@Override
public Double getSchemaVersion()
{
- return 24.002;
+ return 24.006;
}
@Override