3 ================================================================================
5 ================================================================================
6 Copyright (C) 2017 AT&T Intellectual Property
7 ================================================================================
8 Licensed under the Apache License, Version 2.0 (the "License");
9 you may not use this file except in compliance with the License.
10 You may obtain a copy of the License at
12 http://www.apache.org/licenses/LICENSE-2.0
14 Unless required by applicable law or agreed to in writing, software
15 distributed under the License is distributed on an "AS IS" BASIS,
16 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 See the License for the specific language governing permissions and
18 limitations under the License.
19 ================================================================================
22 <!DOCTYPE hibernate-mapping PUBLIC
23 "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
24 "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
26 <hibernate-mapping package="org.openecomp.portalsdk.core.domain">
28 <!-- User class mapping details -->
29 <class name="User" table="FN_USER">
30 <id name="id" column="user_id" >
31 <generator class="native">
32 <param name="sequence">seq_fn_user</param>
36 <property name="orgId" column="org_id"/>
37 <property name="managerId" column="manager_id"/>
38 <property name="firstName" column="first_name"/>
39 <property name="middleInitial" column="middle_name"/>
40 <property name="lastName" column="last_name"/>
41 <property name="phone" column="phone"/>
42 <property name="fax" column="fax"/>
43 <property name="cellular" column="cellular"/>
44 <property name="email" column="email"/>
45 <property name="addressId" column="address_id"/>
46 <property name="alertMethodCd" column="alert_method_cd"/>
48 <property name="address1" column="address_line_1"/>
49 <property name="address2" column="address_line_2"/>
50 <property name="city" column="city"/>
51 <property name="state" column="state_cd"/>
52 <property name="zipCode" column="zip_code"/>
53 <property name="country" column="country_cd"/>
55 <property name="hrid" column="hrid"/>
56 <property name="orgUserId" column="org_user_id"/>
57 <property name="orgCode" column="org_code"/>
58 <property name="loginId" column="login_id"/>
59 <property name="loginPwd" column="login_pwd"/>
60 <property name="lastLoginDate" column="last_login_date" type="timestamp"/>
62 <property name="locationClli" column="location_clli" />
63 <property name="orgManagerUserId" column="org_manager_userid" />
64 <property name="company" column="company" />
65 <property name="department" column="department" />
66 <property name="departmentName" column="department_name" />
67 <property name="businessUnit" column="business_unit" />
68 <property name="businessUnitName" column="business_unit_name" />
69 <property name="jobTitle" column="job_title" />
70 <property name="siloStatus" column="silo_status" />
71 <property name="financialLocCode" column="fin_loc_code" />
73 <property name="active" column="active_yn" type="yes_no"/>
74 <property name="internal" column="is_internal_yn" type="yes_no"/>
76 <property name="created" type="timestamp" column="created_date" />
77 <property name="modified" type="timestamp" column="modified_date" />
79 <property name="createdId" column="created_id" />
80 <property name="modifiedId" column="modified_id" />
81 <property name="timeZoneId" column="timezone" />
83 <set name="userApps" table="FN_USER_ROLE" lazy="false" sort="natural" inverse="true" cascade="all-delete-orphan">
84 <key column="user_id"/>
85 <one-to-many class="org.openecomp.portalsdk.core.domain.UserApp" />
88 <set name="pseudoRoles" table="FN_USER_PSEUDO_ROLE" lazy="false" sort="natural">
89 <key column="user_id"/>
90 <many-to-many column="pseudo_role_id" class="org.openecomp.portalsdk.core.domain.Role" />
94 <class name="UserApp" table="fn_user_role">
96 <key-property name="userId" type="long">
97 <column name="user_id" precision="11" scale="0" />
99 <key-many-to-one name="app" class="org.openecomp.portalsdk.core.domain.App" column="app_id" />
100 <key-many-to-one name="role" class="org.openecomp.portalsdk.core.domain.Role" column="role_id" />
102 <property name="priority" type="java.lang.Short">
103 <column name="priority" precision="4" scale="0" />
107 <!-- User App class mapping details -->
108 <class name="App" table="fn_app">
109 <id name="id" column="app_id"/>
110 <property name="name" column="app_name"/>
111 <property name="appPassword" column="app_password"/>
112 <property name="username" column="app_username"/>
116 <!-- User Role class mapping details -->
117 <class name="Role" table="FN_ROLE">
118 <id name="id" column="role_id">
119 <generator class="native">
120 <param name="sequence">seq_fn_role</param>
124 <property name="name" column="role_name"/>
125 <property name="priority" column="priority" />
126 <property name="active" column="active_yn" type="yes_no"/>
128 <set name="roleFunctions" table="FN_ROLE_FUNCTION" lazy="false" sort="natural">
129 <key column="role_id"/>
130 <many-to-many column="function_cd" class="org.openecomp.portalsdk.core.domain.RoleFunction"/>
133 <set name="childRoles" table="FN_ROLE_COMPOSITE" lazy="false" sort="natural">
134 <key column="parent_role_id"/>
135 <many-to-many column="child_role_id" class="org.openecomp.portalsdk.core.domain.Role"/>
138 <set name="parentRoles" table="FN_ROLE_COMPOSITE" lazy="false" sort="natural">
139 <key column="child_role_id"/>
140 <many-to-many column="parent_role_id" class="org.openecomp.portalsdk.core.domain.Role"/>
147 <!-- User Role Function class mapping details -->
148 <class name="RoleFunction" table="FN_FUNCTION">
149 <id name="code" column="function_cd" />
150 <property name="name" column="function_name" />
153 <!-- Menu class mapping details -->
154 <class name="Menu" table="FN_MENU">
155 <id name="id" column="menu_id">
156 <generator class="native">
157 <param name="sequence">seq_fn_menu</param>
161 <property name="menuLevel" column="level-1"/>
162 <property name="label" column="label"/>
163 <property name="parentId" column="parent_id"/>
164 <property name="action" column="action"/>
165 <property name="functionCd" column="function_cd"/>
166 <property name="sortOrder" column="sort_order"/>
167 <property name="servlet" column="servlet"/>
168 <property name="queryString" column="query_string"/>
169 <property name="externalUrl" column="external_url"/>
170 <property name="target" column="target"/>
171 <property name="active" column="active_yn" type="yes_no"/>
172 <property name="separator" column="separator_yn" type="yes_no"/>
173 <property name="imageSrc" column="image_src" />
176 <class name="MenuData" table="FN_MENU">
177 <!-- <id name="id" column="menu_id"/> -->
178 <id name="id" column="menu_id">
179 <generator class="native">
180 <param name="sequence">seq_fn_menu</param>
183 <property name="label" column="label"/>
184 <property name="action" column="action"/>
185 <property name="functionCd" column="function_cd"/>
186 <property name="sortOrder" column="sort_order"/>
187 <property name="servlet" column="servlet"/>
188 <property name="queryString" column="query_string"/>
189 <property name="externalUrl" column="external_url"/>
190 <property name="target" column="target"/>
191 <property name="active" column="active_yn" type="yes_no"/>
192 <property name="separator" column="separator_yn" type="yes_no"/>
193 <property name="imageSrc" column="image_src" />
194 <property name="menuSetCode" column="menu_set_cd" />
196 <many-to-one name="parentMenu" column="parent_id" class="MenuData"/>
198 <set name="childMenus" lazy="false" sort="natural" inverse="true" where="active_yn = 'Y'">
199 <key column="parent_id"/>
200 <one-to-many class="MenuData"/>
204 <!-- Broadcast Message class mapping details -->
205 <class name="BroadcastMessage" table="fn_broadcast_message">
206 <id name="id" column="message_id">
207 <generator class="native">
208 <param name="sequence">seq_fn_broadcast_message</param>
211 <property name="messageText" column="message_text"/>
212 <property name="locationId" column="message_location_id"/>
214 <property name="startDate" column="broadcast_start_date" type="timestamp"/>
215 <property name="endDate" column="broadcast_end_date" type="timestamp"/>
217 <property name="sortOrder" column="sort_order"/>
218 <property name="active" column="active_yn" type="yes_no"/>
220 <property name="siteCd" column="broadcast_site_cd" />
223 <!-- State Lookup class mapping details -->
224 <class name="LuState" table="FN_LU_STATE">
225 <id name="abbr" column="state_cd" />
226 <property name="state" />
229 <!-- Country Lookup class mapping details -->
230 <class name="LuCountry" table="FN_LU_COUNTRY">
231 <id name="abbr" column="country_cd" />
232 <property name="country" />
233 <property name="fullName" column="full_name" />
234 <property name="webphoneCountryLabel" column="fullwebphone_country_label_name" />
237 <class name="LuTimeZone" table="FN_LU_TIMEZONE">
238 <id name="timezoneId" column="timezone_id" />
239 <property name="name" column="timezone_name" />
240 <property name="value" column="timezone_value" />
244 <!-- Lookup (id/value bean) class mapping details -->
245 <class name="Lookup">
246 <composite-id name="nameValueId" class="org.openecomp.portalsdk.core.domain.support.NameValueId">
247 <key-property name="val"/>
248 <key-property name="lab" />
252 <class name="UrlsAccessible" table="V_URL_ACCESS">
253 <composite-id name="urlsAccessibleKey" class="org.openecomp.portalsdk.core.domain.UrlsAccessibleKey">
254 <key-property name="url" column="url"/>
255 <key-property name="functionCd" column="function_cd"/>
259 <query name="functionCDlist">
260 select distinct functionCd from MenuData
263 <query name="menuData">
264 from MenuData where menuSetCode = :menu_set_cd and parentMenu is null
266 <query name="restrictedUrls">
267 FROM UrlsAccessible A where upper(A.urlsAccessibleKey.url) = upper(:current_url)
270 <query name="getUserNameById">
271 select firstName, lastName from User where id = :user_id
274 <query name="getUserEmail">
275 select email from User where id = :user_id
278 <query name="getAllUsers">
279 select id, firstName, lastName from User where active = true order by lastName, firstName
282 <query name="getRoleNameById">
283 select name from Role where id = :role_id
286 <query name="getAllRoles">
287 select id, name from Role order by name
290 <sql-query name="getBytesPublishedDelivered">
291 <return-scalar column="Published" type="java.lang.String"/>
292 <return-scalar column="Delivered" type="java.lang.String"/>
294 select concat(Round(sum(bytespublished)/(1024*1024*1024*1024), 0), ' Pb') 'Published', concat(Round(sum(bytesdelivered)/(1024*1024*1024*1024), 0), ' Pb') ' Delivered' from kpi_drvolumes where day = (select max(day) from kpi_drvolumes)
298 <sql-query name="getDataRouterFeedStats">
299 <return-scalar column="TOTAL_FEEDS" type="java.lang.Long"/>
300 <return-scalar column="ACTIVE_FEEDS" type="java.lang.Long"/>
301 <return-scalar column="ACTIVE_SUBS" type="java.lang.Long"/>
303 SELECT SUM(TOTALFEEDS) TOTAL_FEEDS, SUM(ACTIVEFEEDS) ACTIVE_FEEDS, SUM(ACTIVESUBS) ACTIVE_SUBS FROM kpi_drsumm where day = (select max(day) from kpi_drvolumes)
307 <sql-query name="getLOCStatsCat">
309 select CATEGORY1 CATEGORY from demo_kpi_sourcecode_stats group by category1
313 <sql-query name="getLOCStats">
315 select sum(total_lines) TOTAL_LINES from demo_kpi_sourcecode_stats group by category1
319 <sql-query name="relatedUsers">
320 <return-scalar column="ORG_USER_ID" type="java.lang.String"/>
324 select t.org_user_id from (
325 select distinct c.org_user_id ORG_USER_ID, c.last_login_date
328 (select distinct role_id, app_id from fn_user_role a1, fn_user a2 where a1.user_id = a2.user_id and a2.org_user_id=:org_user_id) b,
330 where a.ROLE_ID = b.role_id
331 and a.APP_ID = b.app_id
332 and a.USER_ID = c.user_id
333 order by c.last_login_date desc limit 10
340 <sql-query name="relatedUserVOs">
341 <return-scalar column="ORG_USER_ID" type="java.lang.String"/>
342 <return-scalar column="EMAIL" type="java.lang.String"/>
346 select t.org_user_id, t.email from (
347 select distinct c.org_user_id ORG_USER_ID, c.email, c.last_login_date
350 (select distinct role_id, app_id from fn_user_role a1, fn_user a2 where a1.user_id = a2.user_id and a2.org_user_id=:org_user_id) b,
352 where a.ROLE_ID = b.role_id
353 and a.APP_ID = b.app_id
354 and a.USER_ID = c.user_id
355 order by c.last_login_date desc limit 10
362 <query name="getCommonWidgetItem">
363 from CommonWidget where category = :cat order by sortOrder, title
366 <!-- <query name="getEventWidgetData">
367 from EventWidget order by sortOrder