Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
E
ejercicio2-framework-back
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Josue
ejercicio2-framework-back
Commits
f2cd78e8
Commit
f2cd78e8
authored
Nov 16, 2021
by
Cristian Aguirre
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Minimal changes in ETL
parent
fff3f7b6
Changes
46
Hide whitespace changes
Inline
Side-by-side
Showing
46 changed files
with
220 additions
and
226 deletions
+220
-226
CountryBean.java
src/main/java/com/bytesw/bytebot/bean/CountryBean.java
+1
-0
DashboardController.java
...va/com/bytesw/bytebot/controller/DashboardController.java
+1
-0
DataBaseItemReaderFactory.java
...t/etl/batch/factory/reader/DataBaseItemReaderFactory.java
+3
-0
ConvertToBeanProcessor.java
...w/bytebot/etl/batch/processor/ConvertToBeanProcessor.java
+1
-2
ScheduleService.java
...com/bytesw/bytebot/etl/batch/service/ScheduleService.java
+7
-2
ETLChannelRepository.java
...java/com/bytesw/bytebot/etl/dao/ETLChannelRepository.java
+0
-11
Action.java
src/main/java/com/bytesw/bytebot/etl/model/Action.java
+4
-7
ETLChannel.java
src/main/java/com/bytesw/bytebot/etl/model/ETLChannel.java
+0
-26
EventHistory.java
src/main/java/com/bytesw/bytebot/etl/model/EventHistory.java
+4
-4
Goal.java
src/main/java/com/bytesw/bytebot/etl/model/Goal.java
+4
-4
Intent.java
src/main/java/com/bytesw/bytebot/etl/model/Intent.java
+5
-5
Message.java
src/main/java/com/bytesw/bytebot/etl/model/Message.java
+4
-4
Response.java
src/main/java/com/bytesw/bytebot/etl/model/Response.java
+4
-4
Session.java
src/main/java/com/bytesw/bytebot/etl/model/Session.java
+7
-6
SessionAction.java
...main/java/com/bytesw/bytebot/etl/model/SessionAction.java
+4
-4
User.java
src/main/java/com/bytesw/bytebot/etl/model/User.java
+4
-4
StartSessionMessageProcessed.java
...sw/bytebot/etl/services/StartSessionMessageProcessed.java
+1
-0
UserMessageProcessed.java
...com/bytesw/bytebot/etl/services/UserMessageProcessed.java
+5
-4
Agent.java
src/main/java/com/bytesw/bytebot/model/Agent.java
+6
-4
Channel.java
src/main/java/com/bytesw/bytebot/model/Channel.java
+5
-7
ChannelParam.java
src/main/java/com/bytesw/bytebot/model/ChannelParam.java
+4
-4
Country.java
src/main/java/com/bytesw/bytebot/model/Country.java
+4
-4
DeploymentChannel.java
...main/java/com/bytesw/bytebot/model/DeploymentChannel.java
+4
-4
DeploymentChannelParamValue.java
...com/bytesw/bytebot/model/DeploymentChannelParamValue.java
+4
-4
FrequentQuestion.java
src/main/java/com/bytesw/bytebot/model/FrequentQuestion.java
+4
-4
QuestionFile.java
src/main/java/com/bytesw/bytebot/model/QuestionFile.java
+4
-4
Timezone.java
src/main/java/com/bytesw/bytebot/model/Timezone.java
+4
-4
ChannelRepository.java
...java/com/bytesw/bytebot/repository/ChannelRepository.java
+4
-0
AgentService.java
src/main/java/com/bytesw/bytebot/service/AgentService.java
+3
-0
DashboardService.java
...om/bytesw/bytebot/service/dashboard/DashboardService.java
+1
-1
application.yml
src/main/resources/application.yml
+41
-26
ActionMapper.xml
...n/resources/config/mappers/bytebot/mysql/ActionMapper.xml
+4
-4
MessageMapper.xml
.../resources/config/mappers/bytebot/mysql/MessageMapper.xml
+21
-21
ResponseMapper.xml
...resources/config/mappers/bytebot/mysql/ResponseMapper.xml
+1
-1
SessionMapper.xml
.../resources/config/mappers/bytebot/mysql/SessionMapper.xml
+5
-5
ActionMapper.xml
...esources/config/mappers/bytebot/postgres/ActionMapper.xml
+4
-4
MessageMapper.xml
...sources/config/mappers/bytebot/postgres/MessageMapper.xml
+21
-21
ResponseMapper.xml
...ources/config/mappers/bytebot/postgres/ResponseMapper.xml
+1
-1
SessionMapper.xml
...sources/config/mappers/bytebot/postgres/SessionMapper.xml
+5
-5
MessageMapper.xml
...main/resources/config/mappers/etl/mysql/MessageMapper.xml
+1
-1
ResponseMapper.xml
...ain/resources/config/mappers/etl/mysql/ResponseMapper.xml
+1
-1
SessionMapper.xml
...main/resources/config/mappers/etl/mysql/SessionMapper.xml
+3
-3
MessageMapper.xml
...n/resources/config/mappers/etl/postgres/MessageMapper.xml
+1
-1
ResponseMapper.xml
.../resources/config/mappers/etl/postgres/ResponseMapper.xml
+1
-1
SessionMapper.xml
...n/resources/config/mappers/etl/postgres/SessionMapper.xml
+3
-3
mybatis.properties
src/main/resources/mybatis.properties
+1
-1
No files found.
src/main/java/com/bytesw/bytebot/bean/CountryBean.java
View file @
f2cd78e8
...
...
@@ -35,6 +35,7 @@ public class CountryBean {
@Expose
private
List
<
String
>
timezones
;
public
static
CountryBean
clone
(
Country
country
)
{
CountryBean
bean
=
new
CountryBean
();
...
...
src/main/java/com/bytesw/bytebot/controller/DashboardController.java
View file @
f2cd78e8
...
...
@@ -30,6 +30,7 @@ public class DashboardController {
@PostMapping
(
"/operative"
)
public
ResponseEntity
<
String
>
getOperativeInfo
(
@RequestBody
Map
<
String
,
Object
>
body
)
{
Map
<
String
,
Object
>
info
=
operativeDashboardService
.
generateInfo
(
body
);
return
new
ResponseEntity
<>(
gson
.
toJson
(
info
),
HttpStatus
.
OK
);
}
...
...
src/main/java/com/bytesw/bytebot/etl/batch/factory/reader/DataBaseItemReaderFactory.java
View file @
f2cd78e8
package
com
.
bytesw
.
bytebot
.
etl
.
batch
.
factory
.
reader
;
import
com.bytesw.bytebot.etl.batch.beans.DynaBean
;
import
lombok.extern.log4j.Log4j2
;
import
org.apache.commons.dbcp.BasicDataSource
;
import
org.springframework.batch.item.ItemReader
;
import
org.springframework.batch.item.database.JdbcCursorItemReader
;
...
...
@@ -20,6 +21,7 @@ import java.util.Map;
* -query
*/
@Component
@Log4j2
public
class
DataBaseItemReaderFactory
implements
ItemReaderFactory
<
DynaBean
,
RowMapper
<
DynaBean
>>
{
@Override
...
...
@@ -49,6 +51,7 @@ public class DataBaseItemReaderFactory implements ItemReaderFactory<DynaBean, Ro
databaseReader
.
setRowMapper
(
mapper
);
databaseReader
.
setSql
(
query
);
log
.
debug
(
"DATASOURCE: "
+
databaseReader
.
getDataSource
());
return
databaseReader
;
}
...
...
src/main/java/com/bytesw/bytebot/etl/batch/processor/ConvertToBeanProcessor.java
View file @
f2cd78e8
...
...
@@ -6,8 +6,7 @@ import com.fasterxml.jackson.databind.ObjectMapper;
import
lombok.extern.log4j.Log4j2
;
import
org.springframework.batch.item.ItemProcessor
;
@Log4j2
public
class
ConvertToBeanProcessor
implements
ItemProcessor
<
DynaBean
,
DynaBean
>
{
public
class
ConvertToBeanProcessor
implements
ItemProcessor
<
DynaBean
,
DynaBean
>
{
private
ObjectMapper
mapper
=
new
ObjectMapper
();
...
...
src/main/java/com/bytesw/bytebot/etl/batch/service/ScheduleService.java
View file @
f2cd78e8
...
...
@@ -32,7 +32,8 @@ import org.springframework.stereotype.Service;
import
java.util.*
;
import
java.util.concurrent.ScheduledFuture
;
//@Service
// Descomentar lo siguiente para que funcione
@Service
@Log4j2
public
class
ScheduleService
implements
SchedulingConfigurer
{
...
...
@@ -102,12 +103,13 @@ public class ScheduleService implements SchedulingConfigurer {
throw
new
RuntimeException
(
"batch properties not found"
);
}
// identifier "prueba" Cambiar luego
properties
.
getTenants
().
stream
().
forEach
(
tenant
->
{
ThreadLocalStorage
.
setTenantName
(
tenant
.
getId
());
configureTask
(
tenant
.
getId
(),
"prueba"
,
taskRegistrar
);
});
//@TODO Falta añadir el modo multitenan
}
...
...
@@ -145,9 +147,12 @@ public class ScheduleService implements SchedulingConfigurer {
}
Long
id
=
eventHistoryRepository
.
maxEventId
();
log
.
debug
(
"ID: "
+
id
);
Map
<
String
,
Object
>
params
=
new
HashMap
<>();
params
.
putAll
(
tenantFound
.
get
().
getDatasource
());
params
.
put
(
"query"
,
String
.
format
((
String
)
params
.
get
(
"query"
),
id
!=
null
?
id
:
0
));
log
.
debug
(
"PARAMS: "
+
params
);
return
dataBaseItemReaderFactory
.
createReader
(
rowMapperFactory
.
createMapper
(
new
HashMap
<>()),
params
);
}
...
...
src/main/java/com/bytesw/bytebot/etl/dao/ETLChannelRepository.java
deleted
100644 → 0
View file @
fff3f7b6
package
com
.
bytesw
.
bytebot
.
etl
.
dao
;
import
com.bytesw.bytebot.etl.model.ETLChannel
;
import
org.springframework.data.repository.CrudRepository
;
import
java.util.Optional
;
public
interface
ETLChannelRepository
extends
CrudRepository
<
ETLChannel
,
Long
>
{
Optional
<
ETLChannel
>
findByIdentifier
(
String
identifier
);
}
src/main/java/com/bytesw/bytebot/etl/model/Action.java
View file @
f2cd78e8
...
...
@@ -10,15 +10,15 @@ import javax.persistence.*;
@Cacheable
(
false
)
@Entity
@Getter
@Setter
@ToString
@Table
(
name
=
"
BBOT
_ACTION"
)
@Table
(
name
=
"
AVB
_ACTION"
)
@NamedQuery
(
name
=
"Action.findByPK"
,
query
=
"Select p from Action p where p.id = ?1"
)
public
class
Action
{
@Id
@Column
(
name
=
"ACTION_ID"
)
@TableGenerator
(
name
=
"
BBOT
_ACTION_GENERATOR"
,
table
=
"SEQUENCE_TABLE"
,
pkColumnName
=
"SEQ_NAME"
,
valueColumnName
=
"SEQ_COUNT"
,
pkColumnValue
=
"
BBOT
_ACTION_SEQ"
,
allocationSize
=
1
)
@GeneratedValue
(
strategy
=
GenerationType
.
TABLE
,
generator
=
"
BBOT
_ACTION_GENERATOR"
)
@TableGenerator
(
name
=
"
AVB
_ACTION_GENERATOR"
,
table
=
"SEQUENCE_TABLE"
,
pkColumnName
=
"SEQ_NAME"
,
valueColumnName
=
"SEQ_COUNT"
,
pkColumnValue
=
"
AVB
_ACTION_SEQ"
,
allocationSize
=
1
)
@GeneratedValue
(
strategy
=
GenerationType
.
TABLE
,
generator
=
"
AVB
_ACTION_GENERATOR"
)
private
Long
id
;
@Column
(
name
=
"ACTION_IDENT"
)
...
...
@@ -28,7 +28,4 @@ public class Action {
@JoinColumn
(
name
=
"GOAL_ID"
,
referencedColumnName
=
"GOAL_ID"
)
private
Goal
goal
;
@Column
(
name
=
"ACTION_RGOAL"
)
@Convert
(
converter
=
BooleanToStringConverter
.
class
)
private
boolean
meetGoal
;
}
src/main/java/com/bytesw/bytebot/etl/model/ETLChannel.java
deleted
100644 → 0
View file @
fff3f7b6
package
com
.
bytesw
.
bytebot
.
etl
.
model
;
import
lombok.Getter
;
import
lombok.Setter
;
import
lombok.ToString
;
import
javax.persistence.*
;
@Cacheable
(
false
)
@Entity
@Getter
@Setter
@ToString
@Table
(
name
=
"BBOT_CHANNEL_DASHBOARD"
)
@NamedQuery
(
name
=
"ETLChannel.findByPK"
,
query
=
"Select p from ETLChannel p where p.id = ?1"
)
public
class
ETLChannel
{
@Id
@Column
(
name
=
"CHANN_ID"
)
@TableGenerator
(
name
=
"BBOT_CHANNEL_DASHBOARD_GENERATOR"
,
table
=
"SEQUENCE_TABLE"
,
pkColumnName
=
"SEQ_NAME"
,
valueColumnName
=
"SEQ_COUNT"
,
pkColumnValue
=
"BBOT_CHANNEL_DASHBOARD_SEQ"
,
allocationSize
=
1
)
@GeneratedValue
(
strategy
=
GenerationType
.
TABLE
,
generator
=
"BBOT_CHANNEL_DASHBOARD_GENERATOR"
)
private
Long
id
;
@Column
(
name
=
"CHANN_IDENT"
)
private
String
identifier
;
}
src/main/java/com/bytesw/bytebot/etl/model/EventHistory.java
View file @
f2cd78e8
...
...
@@ -10,15 +10,15 @@ import java.time.OffsetDateTime;
@Cacheable
(
false
)
@Entity
@Getter
@Setter
@ToString
@Table
(
name
=
"
BBOT
_EVENT_HISTORY"
)
@Table
(
name
=
"
AVB
_EVENT_HISTORY"
)
@NamedQuery
(
name
=
"EventHistory.findByPK"
,
query
=
"Select p from EventHistory p where p.id = ?1"
)
public
class
EventHistory
{
@Id
@Column
(
name
=
"EVENH_ID"
)
@TableGenerator
(
name
=
"
BBOT
_EVENT_HISTORY_GENERATOR"
,
table
=
"SEQUENCE_TABLE"
,
pkColumnName
=
"SEQ_NAME"
,
valueColumnName
=
"SEQ_COUNT"
,
pkColumnValue
=
"
BBOT
_EVENT_HISTORY_SEQ"
,
allocationSize
=
1
)
@GeneratedValue
(
strategy
=
GenerationType
.
TABLE
,
generator
=
"
BBOT
_EVENT_HISTORY_GENERATOR"
)
@TableGenerator
(
name
=
"
AVB
_EVENT_HISTORY_GENERATOR"
,
table
=
"SEQUENCE_TABLE"
,
pkColumnName
=
"SEQ_NAME"
,
valueColumnName
=
"SEQ_COUNT"
,
pkColumnValue
=
"
AVB
_EVENT_HISTORY_SEQ"
,
allocationSize
=
1
)
@GeneratedValue
(
strategy
=
GenerationType
.
TABLE
,
generator
=
"
AVB
_EVENT_HISTORY_GENERATOR"
)
private
Long
id
;
@Column
(
name
=
"EVENH_SENDID"
)
...
...
src/main/java/com/bytesw/bytebot/etl/model/Goal.java
View file @
f2cd78e8
...
...
@@ -9,15 +9,15 @@ import javax.persistence.*;
@Cacheable
(
false
)
@Entity
@Getter
@Setter
@ToString
@Table
(
name
=
"
BBOT
_GOAL"
)
@Table
(
name
=
"
AVB
_GOAL"
)
@NamedQuery
(
name
=
"Goal.findByPK"
,
query
=
"Select p from Goal p where p.id = ?1"
)
public
class
Goal
{
@Id
@Column
(
name
=
"GOAL_ID"
)
@TableGenerator
(
name
=
"
BBOT
_GOAL_GENERATOR"
,
table
=
"SEQUENCE_TABLE"
,
pkColumnName
=
"SEQ_NAME"
,
valueColumnName
=
"SEQ_COUNT"
,
pkColumnValue
=
"
BBOT
_GOAL_SEQ"
,
allocationSize
=
1
)
@GeneratedValue
(
strategy
=
GenerationType
.
TABLE
,
generator
=
"
BBOT
_GOAL_GENERATOR"
)
@TableGenerator
(
name
=
"
AVB
_GOAL_GENERATOR"
,
table
=
"SEQUENCE_TABLE"
,
pkColumnName
=
"SEQ_NAME"
,
valueColumnName
=
"SEQ_COUNT"
,
pkColumnValue
=
"
AVB
_GOAL_SEQ"
,
allocationSize
=
1
)
@GeneratedValue
(
strategy
=
GenerationType
.
TABLE
,
generator
=
"
AVB
_GOAL_GENERATOR"
)
private
Long
id
;
@Column
(
name
=
"GOAL_IDENT"
)
...
...
src/main/java/com/bytesw/bytebot/etl/model/Intent.java
View file @
f2cd78e8
...
...
@@ -6,19 +6,19 @@ import lombok.ToString;
import
javax.persistence.*
;
//
BBOT
_INTENT
//
AVB
_INTENT
@Cacheable
(
false
)
@Entity
@Getter
@Setter
@ToString
@Table
(
name
=
"
BBOT
_INTENT"
)
@Table
(
name
=
"
AVB
_INTENT"
)
@NamedQuery
(
name
=
"Intent.findByPK"
,
query
=
"Select p from Intent p where p.id = ?1"
)
public
class
Intent
{
@Id
@Column
(
name
=
"INTEN_ID"
)
@TableGenerator
(
name
=
"
BBOT
_INTENT_DASHBOARD_GENERATOR"
,
table
=
"SEQUENCE_TABLE"
,
pkColumnName
=
"SEQ_NAME"
,
valueColumnName
=
"SEQ_COUNT"
,
pkColumnValue
=
"
BBOT
_INTENT_DASHBOARD_SEQ"
,
allocationSize
=
1
)
@GeneratedValue
(
strategy
=
GenerationType
.
TABLE
,
generator
=
"
BBOT
_INTENT_DASHBOARD_GENERATOR"
)
@TableGenerator
(
name
=
"
AVB
_INTENT_DASHBOARD_GENERATOR"
,
table
=
"SEQUENCE_TABLE"
,
pkColumnName
=
"SEQ_NAME"
,
valueColumnName
=
"SEQ_COUNT"
,
pkColumnValue
=
"
AVB
_INTENT_DASHBOARD_SEQ"
,
allocationSize
=
1
)
@GeneratedValue
(
strategy
=
GenerationType
.
TABLE
,
generator
=
"
AVB
_INTENT_DASHBOARD_GENERATOR"
)
private
Long
id
;
@Column
(
name
=
"INTEN_IDENT"
)
...
...
src/main/java/com/bytesw/bytebot/etl/model/Message.java
View file @
f2cd78e8
...
...
@@ -14,15 +14,15 @@ import java.time.OffsetDateTime;
@Cacheable
(
false
)
@Entity
@Getter
@Setter
@ToString
@Builder
@Table
(
name
=
"
BBOT
_MESSAGE"
)
@Table
(
name
=
"
AVB
_MESSAGE"
)
@NamedQuery
(
name
=
"Message.findByPK"
,
query
=
"Select p from Message p where p.id = ?1"
)
public
class
Message
{
@Id
@Column
(
name
=
"MESSA_ID"
)
@TableGenerator
(
name
=
"
BBOT
_MESSAGE_GENERATOR"
,
table
=
"SEQUENCE_TABLE"
,
pkColumnName
=
"SEQ_NAME"
,
valueColumnName
=
"SEQ_COUNT"
,
pkColumnValue
=
"
BBOT
_MESSAGE_SEQ"
,
allocationSize
=
1
)
@GeneratedValue
(
strategy
=
GenerationType
.
TABLE
,
generator
=
"
BBOT
_MESSAGE_GENERATOR"
)
@TableGenerator
(
name
=
"
AVB
_MESSAGE_GENERATOR"
,
table
=
"SEQUENCE_TABLE"
,
pkColumnName
=
"SEQ_NAME"
,
valueColumnName
=
"SEQ_COUNT"
,
pkColumnValue
=
"
AVB
_MESSAGE_SEQ"
,
allocationSize
=
1
)
@GeneratedValue
(
strategy
=
GenerationType
.
TABLE
,
generator
=
"
AVB
_MESSAGE_GENERATOR"
)
private
Long
id
;
@Column
(
name
=
"SESSION_ID"
)
...
...
src/main/java/com/bytesw/bytebot/etl/model/Response.java
View file @
f2cd78e8
...
...
@@ -10,15 +10,15 @@ import java.time.OffsetDateTime;
@Cacheable
(
false
)
@Entity
@Getter
@Setter
@ToString
@Table
(
name
=
"
BBOT
_RESPONSE"
)
@Table
(
name
=
"
AVB
_RESPONSE"
)
@NamedQuery
(
name
=
"Response.findByPK"
,
query
=
"Select p from Response p where p.id = ?1"
)
public
class
Response
{
@Id
@Column
(
name
=
"RESPO_ID"
)
@TableGenerator
(
name
=
"
BBOT
_RESPONSE_GENERATOR"
,
table
=
"SEQUENCE_TABLE"
,
pkColumnName
=
"SEQ_NAME"
,
valueColumnName
=
"SEQ_COUNT"
,
pkColumnValue
=
"
BBOT
_RESPONSE_SEQ"
,
allocationSize
=
1
)
@GeneratedValue
(
strategy
=
GenerationType
.
TABLE
,
generator
=
"
BBOT
_RESPONSE_GENERATOR"
)
@TableGenerator
(
name
=
"
AVB
_RESPONSE_GENERATOR"
,
table
=
"SEQUENCE_TABLE"
,
pkColumnName
=
"SEQ_NAME"
,
valueColumnName
=
"SEQ_COUNT"
,
pkColumnValue
=
"
AVB
_RESPONSE_SEQ"
,
allocationSize
=
1
)
@GeneratedValue
(
strategy
=
GenerationType
.
TABLE
,
generator
=
"
AVB
_RESPONSE_GENERATOR"
)
private
Long
id
;
@Column
(
name
=
"RESPO_DATE"
)
...
...
src/main/java/com/bytesw/bytebot/etl/model/Session.java
View file @
f2cd78e8
package
com
.
bytesw
.
bytebot
.
etl
.
model
;
import
com.bytesw.bytebot.model.Channel
;
import
lombok.Getter
;
import
lombok.Setter
;
import
lombok.ToString
;
...
...
@@ -10,15 +11,15 @@ import java.time.OffsetDateTime;
@Cacheable
(
false
)
@Entity
@Getter
@Setter
@ToString
@Table
(
name
=
"
BBOT
_SESSION"
)
@Table
(
name
=
"
AVB
_SESSION"
)
@NamedQuery
(
name
=
"Session.findByPK"
,
query
=
"Select p from Session p where p.id = ?1"
)
public
class
Session
{
@Id
@Column
(
name
=
"SESSION_ID"
)
@TableGenerator
(
name
=
"
BBOT
_SESSION_GENERATOR"
,
table
=
"SEQUENCE_TABLE"
,
pkColumnName
=
"SEQ_NAME"
,
valueColumnName
=
"SEQ_COUNT"
,
pkColumnValue
=
"
BBOT
_SESSION_SEQ"
,
allocationSize
=
1
)
@GeneratedValue
(
strategy
=
GenerationType
.
TABLE
,
generator
=
"
BBOT
_SESSION_GENERATOR"
)
@TableGenerator
(
name
=
"
AVB
_SESSION_GENERATOR"
,
table
=
"SEQUENCE_TABLE"
,
pkColumnName
=
"SEQ_NAME"
,
valueColumnName
=
"SEQ_COUNT"
,
pkColumnValue
=
"
AVB
_SESSION_SEQ"
,
allocationSize
=
1
)
@GeneratedValue
(
strategy
=
GenerationType
.
TABLE
,
generator
=
"
AVB
_SESSION_GENERATOR"
)
private
Long
id
;
@Column
(
name
=
"SESSION_DATE"
,
nullable
=
false
)
...
...
@@ -31,8 +32,8 @@ public class Session {
private
OffsetDateTime
responseDate
;
@ManyToOne
@JoinColumn
(
name
=
"
CHANN_ID"
,
referencedColumnName
=
"CHANN_ID
"
)
private
ETL
Channel
channel
;
@JoinColumn
(
name
=
"
chan_id"
,
referencedColumnName
=
"chan_id
"
)
private
Channel
channel
;
@ManyToOne
(
optional
=
false
)
@JoinColumn
(
name
=
"USER_ID"
,
referencedColumnName
=
"USER_ID"
)
...
...
src/main/java/com/bytesw/bytebot/etl/model/SessionAction.java
View file @
f2cd78e8
...
...
@@ -10,15 +10,15 @@ import java.time.OffsetDateTime;
@Cacheable
(
false
)
@Entity
@Getter
@Setter
@ToString
@Table
(
name
=
"
BBOT
_ACTION_SESSION"
)
@Table
(
name
=
"
AVB
_ACTION_SESSION"
)
@NamedQuery
(
name
=
"SessionAction.findByPK"
,
query
=
"Select p from SessionAction p where p.id = ?1"
)
public
class
SessionAction
{
@Id
@Column
(
name
=
"ASESS_ID"
)
@TableGenerator
(
name
=
"
BBOT
_ACTION_SESSION_GENERATOR"
,
table
=
"SEQUENCE_TABLE"
,
pkColumnName
=
"SEQ_NAME"
,
valueColumnName
=
"SEQ_COUNT"
,
pkColumnValue
=
"
BBOT
_ACTION_SESSION_SEQ"
,
allocationSize
=
1
)
@GeneratedValue
(
strategy
=
GenerationType
.
TABLE
,
generator
=
"
BBOT
_ACTION_SESSION_GENERATOR"
)
@TableGenerator
(
name
=
"
AVB
_ACTION_SESSION_GENERATOR"
,
table
=
"SEQUENCE_TABLE"
,
pkColumnName
=
"SEQ_NAME"
,
valueColumnName
=
"SEQ_COUNT"
,
pkColumnValue
=
"
AVB
_ACTION_SESSION_SEQ"
,
allocationSize
=
1
)
@GeneratedValue
(
strategy
=
GenerationType
.
TABLE
,
generator
=
"
AVB
_ACTION_SESSION_GENERATOR"
)
private
Long
id
;
@ManyToOne
(
optional
=
false
)
...
...
src/main/java/com/bytesw/bytebot/etl/model/User.java
View file @
f2cd78e8
...
...
@@ -8,15 +8,15 @@ import javax.persistence.*;
@Cacheable
(
false
)
@Entity
@Getter
@Setter
@ToString
@Table
(
name
=
"
BBOT
_USER"
)
@Table
(
name
=
"
AVB
_USER"
)
@NamedQuery
(
name
=
"User.findByPK"
,
query
=
"Select p from User p where p.id = ?1"
)
public
class
User
{
@Id
@Column
(
name
=
"USER_ID"
)
@TableGenerator
(
name
=
"
BBOT
_USER_GENERATOR"
,
table
=
"SEQUENCE_TABLE"
,
pkColumnName
=
"SEQ_NAME"
,
valueColumnName
=
"SEQ_COUNT"
,
pkColumnValue
=
"
BBOT
_USER_SEQ"
,
allocationSize
=
1
)
@GeneratedValue
(
strategy
=
GenerationType
.
TABLE
,
generator
=
"
BBOT
_USER_GENERATOR"
)
@TableGenerator
(
name
=
"
AVB
_USER_GENERATOR"
,
table
=
"SEQUENCE_TABLE"
,
pkColumnName
=
"SEQ_NAME"
,
valueColumnName
=
"SEQ_COUNT"
,
pkColumnValue
=
"
AVB
_USER_SEQ"
,
allocationSize
=
1
)
@GeneratedValue
(
strategy
=
GenerationType
.
TABLE
,
generator
=
"
AVB
_USER_GENERATOR"
)
private
Long
id
;
@Column
(
name
=
"USER_IDENT"
)
...
...
src/main/java/com/bytesw/bytebot/etl/services/StartSessionMessageProcessed.java
View file @
f2cd78e8
...
...
@@ -43,6 +43,7 @@ public class StartSessionMessageProcessed extends MessageProcessedSupport implem
Double
timestamp
=
(
Double
)
JsonUtils
.
getFieldFromJson
(
json
,
this
.
fields
.
get
(
TIMESTAMP_FIELD_NAME
));
if
(
timestamp
!=
null
)
{
// Validate if the below method is ok
OffsetDateTime
sessionDate
=
getOffsetDateTimeFromTimestampPython
(
timestamp
);
if
(
sessionDate
!=
null
)
{
Session
session
=
new
Session
();
...
...
src/main/java/com/bytesw/bytebot/etl/services/UserMessageProcessed.java
View file @
f2cd78e8
package
com
.
bytesw
.
bytebot
.
etl
.
services
;
import
com.bytesw.bytebot.etl.beans.SessionBean
;
import
com.bytesw.bytebot.etl.dao.ETLChannelRepository
;
import
com.bytesw.bytebot.model.Channel
;
import
com.bytesw.bytebot.repository.ChannelRepository
;
import
com.bytesw.bytebot.etl.dao.IntentRepository
;
import
com.bytesw.bytebot.etl.dao.MessageRepository
;
import
com.bytesw.bytebot.etl.dao.UserRepository
;
...
...
@@ -31,7 +32,7 @@ public class UserMessageProcessed extends MessageProcessedSupport implements Mes
private
ETLMessageJDBCRepository
messageJDBCRepository
;
@Autowired
private
ETLChannelRepository
chan
nelRepository
;
private
ChannelRepository
cha
nelRepository
;
@Autowired
private
UserRepository
userRepository
;
...
...
@@ -92,12 +93,12 @@ public class UserMessageProcessed extends MessageProcessedSupport implements Mes
Session
session
=
sessionFond
.
get
();
session
.
setLastEventDate
(
date
);
if
(
channelIdentifier
!=
null
&&
session
.
getChannel
()
==
null
)
{
Optional
<
ETLChannel
>
channelFound
=
channelRepository
.
findByIdentifier
(
channelIdentifier
);
Optional
<
Channel
>
channelFound
=
chanelRepository
.
findByName
(
channelIdentifier
);
// Optional<ETLChannel> channelFound = channelRepository.findByIdentifier(channelIdentifier);
if
(
channelFound
.
isPresent
())
{
session
.
setChannel
(
channelFound
.
get
());
}
}
sessionBotRepository
.
save
(
session
);
}
}
...
...
src/main/java/com/bytesw/bytebot/model/Agent.java
View file @
f2cd78e8
...
...
@@ -9,6 +9,7 @@ import com.bytesw.bytebot.model.enums.AgentTypeEnum;
import
com.bytesw.bytebot.model.enums.LanguageEnum
;
import
com.bytesw.bytebot.model.enums.StatusEnum
;
import
lombok.*
;
import
org.hibernate.annotations.Type
;
import
javax.persistence.*
;
import
java.io.Serializable
;
...
...
@@ -17,15 +18,15 @@ import java.util.List;
@Entity
@Getter
@Setter
@ToString
@EqualsAndHashCode
(
of
=
"id"
)
@NoArgsConstructor
@Table
(
name
=
"
BBOT
_AGENT"
)
@Table
(
name
=
"
AVB
_AGENT"
)
@NamedQuery
(
name
=
"Agent.findByPK"
,
query
=
"Select u from Agent u where u.id = ?1"
)
public
class
Agent
implements
Serializable
{
@Id
@Column
(
name
=
"AGEN_ID"
)
@GeneratedValue
(
strategy
=
GenerationType
.
TABLE
,
generator
=
"
BBOT
_AGENT_GENERATOR"
)
@TableGenerator
(
name
=
"
BBOT
_AGENT_GENERATOR"
,
table
=
"SEQUENCE_TABLE"
,
pkColumnName
=
"SEQ_NAME"
,
valueColumnName
=
"SEQ_COUNT"
,
pkColumnValue
=
"
BBOT
_AGENT_SEQ"
,
allocationSize
=
1
)
@GeneratedValue
(
strategy
=
GenerationType
.
TABLE
,
generator
=
"
AVB
_AGENT_GENERATOR"
)
@TableGenerator
(
name
=
"
AVB
_AGENT_GENERATOR"
,
table
=
"SEQUENCE_TABLE"
,
pkColumnName
=
"SEQ_NAME"
,
valueColumnName
=
"SEQ_COUNT"
,
pkColumnValue
=
"
AVB
_AGENT_SEQ"
,
allocationSize
=
1
)
private
Long
id
;
@Column
(
name
=
"AGEN_IDEN"
)
...
...
@@ -45,6 +46,7 @@ public class Agent implements Serializable {
private
String
timezone
;
@Lob
@Type
(
type
=
"org.hibernate.type.TextType"
)
@Basic
(
fetch
=
FetchType
.
LAZY
)
@Column
(
name
=
"AGEN_AVAT"
)
private
String
avatar
;
...
...
src/main/java/com/bytesw/bytebot/model/Channel.java
View file @
f2cd78e8
...
...
@@ -20,18 +20,16 @@ import java.util.List;
* licencia de uso que firmó con Byte.
*/
@Entity
@Table
(
name
=
"BBOT_CHANNEL"
)
@Getter
@Setter
@ToString
@Table
(
name
=
"AVB_CHANNEL"
)
@Getter
@Setter
@ToString
@EqualsAndHashCode
(
of
=
{
"id"
},
callSuper
=
false
)
public
class
Channel
{
@Id
@Column
(
name
=
"CHAN_ID"
)
@GeneratedValue
(
strategy
=
GenerationType
.
TABLE
,
generator
=
"
BBOT
_CHANNEL_GENERATOR"
)
@TableGenerator
(
name
=
"
BBOT
_CHANNEL_GENERATOR"
,
table
=
"SEQUENCE_TABLE"
,
pkColumnName
=
"SEQ_NAME"
,
valueColumnName
=
"SEQ_COUNT"
,
pkColumnValue
=
"
BBOT
_CHANNEL_SEQ"
,
allocationSize
=
1
)
@GeneratedValue
(
strategy
=
GenerationType
.
TABLE
,
generator
=
"
AVB
_CHANNEL_GENERATOR"
)
@TableGenerator
(
name
=
"
AVB
_CHANNEL_GENERATOR"
,
table
=
"SEQUENCE_TABLE"
,
pkColumnName
=
"SEQ_NAME"
,
valueColumnName
=
"SEQ_COUNT"
,
pkColumnValue
=
"
AVB
_CHANNEL_SEQ"
,
allocationSize
=
1
)
private
Long
id
;
@Column
(
name
=
"CHAN_IDEN"
)
...
...
src/main/java/com/bytesw/bytebot/model/ChannelParam.java
View file @
f2cd78e8
...
...
@@ -20,7 +20,7 @@ import javax.persistence.*;
* licencia de uso que firmó con Byte.
*/
@Entity
@Table
(
name
=
"
BBOT
_CHANNEL_PARAM"
)
@Table
(
name
=
"
AVB
_CHANNEL_PARAM"
)
@Getter
@Setter
@ToString
...
...
@@ -29,9 +29,9 @@ public class ChannelParam {
@Id
@Column
(
name
=
"CHPA_ID"
)
@GeneratedValue
(
strategy
=
GenerationType
.
TABLE
,
generator
=
"
BBOT
_CHANNEL_PARAM_GENERATOR"
)
@TableGenerator
(
name
=
"
BBOT
_CHANNEL_PARAM_GENERATOR"
,
table
=
"SEQUENCE_TABLE"
,
pkColumnName
=
"SEQ_NAME"
,
valueColumnName
=
"SEQ_COUNT"
,
pkColumnValue
=
"
BBOT
_CHANNEL_PARAM_SEQ"
,
allocationSize
=
1
)
@GeneratedValue
(
strategy
=
GenerationType
.
TABLE
,
generator
=
"
AVB
_CHANNEL_PARAM_GENERATOR"
)
@TableGenerator
(
name
=
"
AVB
_CHANNEL_PARAM_GENERATOR"
,
table
=
"SEQUENCE_TABLE"
,
pkColumnName
=
"SEQ_NAME"
,
valueColumnName
=
"SEQ_COUNT"
,
pkColumnValue
=
"
AVB
_CHANNEL_PARAM_SEQ"
,
allocationSize
=
1
)
private
Long
id
;
@Column
(
name
=
"CHPA_IDEN"
)
...
...
src/main/java/com/bytesw/bytebot/model/Country.java
View file @
f2cd78e8
...
...
@@ -11,15 +11,15 @@ import java.util.List;
@ToString
@EqualsAndHashCode
(
of
=
"id"
)
@NoArgsConstructor
@Table
(
name
=
"
BBOT
_COUNTRY"
)
@Table
(
name
=
"
AVB
_COUNTRY"
)
@NamedQuery
(
name
=
"Country.findByPK"
,
query
=
"Select u from Country u where u.id = ?1"
)
public
class
Country
{
@Id
@Column
(
name
=
"COUN_ID"
)
@GeneratedValue
(
strategy
=
GenerationType
.
TABLE
,
generator
=
"
BBOT
_COUNTRY_GENERATOR"
)
@TableGenerator
(
name
=
"
BBOT
_COUNTRY_GENERATOR"
,
table
=
"SEQUENCE_TABLE"
,
pkColumnName
=
"SEQ_NAME"
,
valueColumnName
=
"SEQ_COUNT"
,
pkColumnValue
=
"
BBOT
_COUNTRY_SEQ"
,
allocationSize
=
1
)
@GeneratedValue
(
strategy
=
GenerationType
.
TABLE
,
generator
=
"
AVB
_COUNTRY_GENERATOR"
)
@TableGenerator
(
name
=
"
AVB
_COUNTRY_GENERATOR"
,
table
=
"SEQUENCE_TABLE"
,
pkColumnName
=
"SEQ_NAME"
,
valueColumnName
=
"SEQ_COUNT"
,
pkColumnValue
=
"
AVB
_COUNTRY_SEQ"
,
allocationSize
=
1
)
private
Long
id
;
@Column
(
name
=
"COUN_NAME"
,
nullable
=
false
)
...
...
src/main/java/com/bytesw/bytebot/model/DeploymentChannel.java
View file @
f2cd78e8
...
...
@@ -22,7 +22,7 @@ import java.util.List;
* licencia de uso que firmó con Byte.
*/
@Entity
@Table
(
name
=
"
BBOT
_DEPLOYMENT_CHANNEL"
)
@Table
(
name
=
"
AVB
_DEPLOYMENT_CHANNEL"
)
@Getter
@Setter
@ToString
...
...
@@ -31,9 +31,9 @@ public class DeploymentChannel {
@Id
@Column
(
name
=
"DCHA_ID"
)
@GeneratedValue
(
strategy
=
GenerationType
.
TABLE
,
generator
=
"
BBOT
_DEPLOYMENT_CHANNEL_GENERATOR"
)
@TableGenerator
(
name
=
"
BBOT
_DEPLOYMENT_CHANNEL_GENERATOR"
,
table
=
"SEQUENCE_TABLE"
,
pkColumnName
=
"SEQ_NAME"
,
valueColumnName
=
"SEQ_COUNT"
,
pkColumnValue
=
"
BBOT
_DEPLOYMENT_CHANNEL_SEQ"
,
allocationSize
=
1
)
@GeneratedValue
(
strategy
=
GenerationType
.
TABLE
,
generator
=
"
AVB
_DEPLOYMENT_CHANNEL_GENERATOR"
)
@TableGenerator
(
name
=
"
AVB
_DEPLOYMENT_CHANNEL_GENERATOR"
,
table
=
"SEQUENCE_TABLE"
,
pkColumnName
=
"SEQ_NAME"
,
valueColumnName
=
"SEQ_COUNT"
,
pkColumnValue
=
"
AVB
_DEPLOYMENT_CHANNEL_SEQ"
,
allocationSize
=
1
)
private
Long
id
;
@Column
(
name
=
"DCHA_NAME"
)
...
...
src/main/java/com/bytesw/bytebot/model/DeploymentChannelParamValue.java
View file @
f2cd78e8
...
...
@@ -19,7 +19,7 @@ import javax.persistence.*;
* licencia de uso que firmó con Byte.
*/
@Entity
@Table
(
name
=
"
BBOT
_DEPLOYMENT_CHANNEL_PARAM_VALUE"
)
@Table
(
name
=
"
AVB
_DEPLOYMENT_CHANNEL_PARAM_VALUE"
)
@Getter
@Setter
@ToString
...
...
@@ -28,9 +28,9 @@ public class DeploymentChannelParamValue {
@Id
@Column
(
name
=
"CHPV_ID"
)
@GeneratedValue
(
strategy
=
GenerationType
.
TABLE
,
generator
=
"
BBOT
_DEPLOYMENT_CHANNEL_PARAM_VALUE_GENERATOR"
)
@TableGenerator
(
name
=
"
BBOT
_DEPLOYMENT_CHANNEL_PARAM_VALUE_GENERATOR"
,
table
=
"SEQUENCE_TABLE"
,
pkColumnName
=
"SEQ_NAME"
,
valueColumnName
=
"SEQ_COUNT"
,
pkColumnValue
=
"
BBOT
_DEPLOYMENT_CHANNEL_PARAM_VALUE_SEQ"
,
allocationSize
=
1
)
@GeneratedValue
(
strategy
=
GenerationType
.
TABLE
,
generator
=
"
AVB
_DEPLOYMENT_CHANNEL_PARAM_VALUE_GENERATOR"
)
@TableGenerator
(
name
=
"
AVB
_DEPLOYMENT_CHANNEL_PARAM_VALUE_GENERATOR"
,
table
=
"SEQUENCE_TABLE"
,
pkColumnName
=
"SEQ_NAME"
,
valueColumnName
=
"SEQ_COUNT"
,
pkColumnValue
=
"
AVB
_DEPLOYMENT_CHANNEL_PARAM_VALUE_SEQ"
,
allocationSize
=
1
)
private
Long
id
;
@ManyToOne
...
...
src/main/java/com/bytesw/bytebot/model/FrequentQuestion.java
View file @
f2cd78e8
...
...
@@ -25,7 +25,7 @@ import java.time.OffsetDateTime;
* licencia de uso que firmó con Byte.
*/
@Entity
@Table
(
name
=
"
BBOT
_FREQUENT_QUESTION"
)
@Table
(
name
=
"
AVB
_FREQUENT_QUESTION"
)
@Getter
@Setter
@ToString
...
...
@@ -33,9 +33,9 @@ import java.time.OffsetDateTime;
public
class
FrequentQuestion
{
@Id
@Column
(
name
=
"FQUE_ID"
)
@GeneratedValue
(
strategy
=
GenerationType
.
TABLE
,
generator
=
"
BBOT
_FREQUENT_QUESTION_GENERATOR"
)
@TableGenerator
(
name
=
"
BBOT
_FREQUENT_QUESTION_GENERATOR"
,
table
=
"SEQUENCE_TABLE"
,
pkColumnName
=
"SEQ_NAME"
,
valueColumnName
=
"SEQ_COUNT"
,
pkColumnValue
=
"
BBOT
_FREQUENT_QUESTION_SEQ"
,
initialValue
=
1
,
allocationSize
=
1
)
@GeneratedValue
(
strategy
=
GenerationType
.
TABLE
,
generator
=
"
AVB
_FREQUENT_QUESTION_GENERATOR"
)
@TableGenerator
(
name
=
"
AVB
_FREQUENT_QUESTION_GENERATOR"
,
table
=
"SEQUENCE_TABLE"
,
pkColumnName
=
"SEQ_NAME"
,
valueColumnName
=
"SEQ_COUNT"
,
pkColumnValue
=
"
AVB
_FREQUENT_QUESTION_SEQ"
,
initialValue
=
1
,
allocationSize
=
1
)
private
Long
id
;
@Column
(
name
=
"FQUE_UUID"
)
...
...
src/main/java/com/bytesw/bytebot/model/QuestionFile.java
View file @
f2cd78e8
...
...
@@ -29,15 +29,15 @@ import lombok.ToString;
@ToString
@EqualsAndHashCode
(
of
=
"id"
)
@NoArgsConstructor
@Table
(
name
=
"
BBOT
_QUESTION_FILE"
)
@Table
(
name
=
"
AVB
_QUESTION_FILE"
)
@NamedQuery
(
name
=
"QuestionFile.findByPK"
,
query
=
"Select u from QuestionFile u where u.id = ?1"
)
public
class
QuestionFile
{
@Id
@Column
(
name
=
"QUFI_ID"
)
@TableGenerator
(
name
=
"
BBOT_QUESTION_FILE_GENERATOR"
,
table
=
"SEQUENCE_TABLE"
,
pkColumnName
=
"SEQ_NAME"
,
valueColumnName
=
"SEQ_COUNT"
,
pkColumnValue
=
"
BBOT
_QUESTION_FILE_SEQ"
,
allocationSize
=
1
)
@GeneratedValue
(
strategy
=
GenerationType
.
TABLE
,
generator
=
"
BBOT
_QUESTION_FILE_GENERATOR"
)
@TableGenerator
(
name
=
"
AVB_QUESTION_FILE_GENERATOR"
,
table
=
"SEQUENCE_TABLE"
,
pkColumnName
=
"SEQ_NAME"
,
valueColumnName
=
"SEQ_COUNT"
,
pkColumnValue
=
"
AVB
_QUESTION_FILE_SEQ"
,
allocationSize
=
1
)
@GeneratedValue
(
strategy
=
GenerationType
.
TABLE
,
generator
=
"
AVB
_QUESTION_FILE_GENERATOR"
)
private
Long
id
;
@Column
(
name
=
"QUFI_UUID"
,
nullable
=
false
)
...
...
src/main/java/com/bytesw/bytebot/model/Timezone.java
View file @
f2cd78e8
...
...
@@ -19,14 +19,14 @@ import javax.persistence.*;
@Entity
@Getter
@Setter
@ToString
@EqualsAndHashCode
(
of
=
"id"
)
@NoArgsConstructor
@Table
(
name
=
"
BBOT
_TIMEZONE"
)
@Table
(
name
=
"
AVB
_TIMEZONE"
)
public
class
Timezone
{
@Id
@Column
(
name
=
"TZON_ID"
)
@GeneratedValue
(
strategy
=
GenerationType
.
TABLE
,
generator
=
"
BBOT
_TIMEZONE_GENERATOR"
)
@TableGenerator
(
name
=
"
BBOT
_TIMEZONE_GENERATOR"
,
table
=
"SEQUENCE_TABLE"
,
pkColumnName
=
"SEQ_NAME"
,
valueColumnName
=
"SEQ_COUNT"
,
pkColumnValue
=
"
BBOT
_TIMEZONE_SEQ"
,
allocationSize
=
1
)
@GeneratedValue
(
strategy
=
GenerationType
.
TABLE
,
generator
=
"
AVB
_TIMEZONE_GENERATOR"
)
@TableGenerator
(
name
=
"
AVB
_TIMEZONE_GENERATOR"
,
table
=
"SEQUENCE_TABLE"
,
pkColumnName
=
"SEQ_NAME"
,
valueColumnName
=
"SEQ_COUNT"
,
pkColumnValue
=
"
AVB
_TIMEZONE_SEQ"
,
allocationSize
=
1
)
private
Long
id
;
@Column
(
name
=
"TZON_ZONE"
,
nullable
=
false
)
...
...
src/main/java/com/bytesw/bytebot/repository/ChannelRepository.java
View file @
f2cd78e8
...
...
@@ -3,6 +3,8 @@ package com.bytesw.bytebot.repository;
import
com.bytesw.bytebot.model.Channel
;
import
org.springframework.data.repository.CrudRepository
;
import
java.util.Optional
;
/**
* @author Sebastián Chicoma Sandmann.
* @version 9-sep-2020
...
...
@@ -15,4 +17,6 @@ import org.springframework.data.repository.CrudRepository;
* licencia de uso que firmó con Byte.
*/
public
interface
ChannelRepository
extends
CrudRepository
<
Channel
,
Long
>
{
Optional
<
Channel
>
findByName
(
String
name
);
}
src/main/java/com/bytesw/bytebot/service/AgentService.java
View file @
f2cd78e8
...
...
@@ -422,6 +422,9 @@ public class AgentService extends CustomPaginationService<Agent> {
agentRepository
.
save
(
agent
);
}
}
else
{
isValid
=
false
;
}
return
isValid
;
}
...
...
src/main/java/com/bytesw/bytebot/service/dashboard/DashboardService.java
View file @
f2cd78e8
...
...
@@ -20,7 +20,7 @@ public abstract class DashboardService {
public
Map
<
String
,
Object
>
generateInfo
(
Map
<
String
,
Object
>
params
)
{
Map
<
String
,
Object
>
info
=
new
HashMap
<>();
log
.
info
(
params
);
if
(
params
==
null
)
{
return
info
;
}
...
...
src/main/resources/application.yml
View file @
f2cd78e8
...
...
@@ -4,7 +4,7 @@ server:
servlet.context-path
:
${APPLICATION_PATH:/bytebot}
port
:
${APPLICATION_PORT:9077}
web
:
static-content-location
:
file:
C:/Users/aaron/Documents/proyectos/BYTEBOT
/bytebot-workspace/dist/bytebot-html/
static-content-location
:
file:
/home/cristian/Documents/CDB-Bytebot
/bytebot-workspace/dist/bytebot-html/
#NOTA debe terminar con /
security
:
...
...
@@ -27,7 +27,7 @@ application:
byte-bot
:
batch
:
chunk
:
1
cron
:
0/
5
* * * * *
cron
:
0/
100
* * * * *
show-side-bar
:
false
test
:
ENC(OEchnTXpIZnCVdPNthgCZBfQjMt1AUS1)
name
:
xdf-example
...
...
@@ -54,13 +54,13 @@ application:
services
:
multi-tenant-conf
:
exclude-service
:
/health
authorization-service.url
:
http://
192.168.27.96:
7580
authorization-service.url
:
http://
localhost:1
7580
security
:
oauth2sso
# none, basic, oauth2sso
security.method
:
true
security-exclude
:
/service/oauth/userinfo, /actuator/**, /mylogout, /login, /logout, /goodbye, /error, /anon, /cache.manifest, /favicon.ico, /service/file, /goodbye
messaging
:
queue-support
:
activemq
multi-tenant
:
tru
e
multi-tenant
:
fals
e
clustering
:
true
database
:
true
send-email
:
false
...
...
@@ -102,47 +102,62 @@ spring:
name
:
xdf-example
datasource
:
database-type
:
mysql
schemaName
:
BYTEBOT_BASE
url
:
jdbc:
mysql://192.168.27.96:3306/BYTEBOT_BASE
?useSSL=false
driverClassName
:
'
com.mysql.cj.jdbc
.Driver'
username
:
root
password
:
byte2k20
database-type
:
postgres
schemaName
:
avb
url
:
jdbc:
postgresql://192.168.21.74:5432/avb
?useSSL=false
driverClassName
:
'
org.postgresql
.Driver'
username
:
postgres
password
:
minimum-idle
:
10
maximum-pool-size
:
10
validationQuery
:
SELECT 1
testWhileIdle
:
true
hikari.registerMbeans
:
true
security
:
basepath
:
http://localhost:9077/bytebot
provider
:
byte
# oracle, amazon
oauth2-client
:
clientId
:
xdf-client
clientSecret
:
xdf-secret
accessTokenUri
:
http://192.168.1.6:18080/oauth/token
userAuthorizationUri
:
http://192.168.1.6:18080/oauth/authorize
oauth2-resource
:
userInfoUri
:
http://192.168.1.6:18080/oauth/userinfo
logoutUri
:
http://192.168.1.6:18080/oauth/userlogout
tenants
:
-
id
:
T186A1
servername
:
cdb.bytebot.t186a1
datasource
:
url
:
jdbc:mysql://192.168.27.96:3306/BYTEBOT_T186A1?useSSL=false
username
:
root
password
:
byte2k20
database-type
:
postgres
schemaName
:
public
url
:
jdbc:postgresql://localhost:5432/avb?useSSL=false
driverClassName
:
'
org.postgresql.Driver'
username
:
postgres
password
:
admin
minimum-idle
:
10
maximum-pool-size
:
10
0
maximum-pool-size
:
10
validationQuery
:
SELECT 1
testWhileIdle
:
true
hikari.registerMbeans
:
true
security
:
basepath
:
http://
cdb.bytebot.t186a1
:9077/bytebot
basepath
:
http://
localhost
:9077/bytebot
provider
:
byte
# oracle, amazon
oauth2-client
:
clientId
:
xdf-client
clientSecret
:
xdf-secret
accessTokenUri
:
http://192.168.
27.96:
8080/oauth/token
userAuthorizationUri
:
http://192.168.
27.96:
8080/oauth/authorize
accessTokenUri
:
http://192.168.
1.6:1
8080/oauth/token
userAuthorizationUri
:
http://192.168.
1.6:1
8080/oauth/authorize
oauth2-resource
:
userInfoUri
:
http://192.168.
27.96:
8080/oauth/userinfo
logoutUri
:
http://192.168.
27.96:
8080/oauth/userlogout
userInfoUri
:
http://192.168.
1.6:1
8080/oauth/userinfo
logoutUri
:
http://192.168.
1.6:1
8080/oauth/userlogout
jpa
:
open-in-view
:
false
properties.hibernate
:
dialect
:
org.hibernate.dialect.MySQL5Dialect
dialect
:
org.hibernate.dialect.
PostgreSQLDialect
#org.hibernate.dialect.
MySQL5Dialect
format_sql
:
false
hbm2ddl.auto
:
none
jdbc
:
...
...
@@ -150,20 +165,20 @@ spring:
non_contextual_creation
:
true
show-sql
:
true
#session.store-type: jdbc
activemq.broker-url
:
tcp://
192.168.27.96:61616
activemq.broker-url
:
tcp://
localhost:8161
batch
:
tenants
:
-
id
:
T186A1
datasource
:
jdbc-driver
:
com.mysql.cj.jdbc.Driver
username
:
root
password
:
byte2k20
jdbc-url
:
jdbc:
mysql://192.168.27.96:3306/BYTEBOT_T186A1
?useSSL=false
jdbc-driver
:
'
org.postgresql.Driver'
username
:
postgres
password
:
jdbc-url
:
jdbc:
postgresql://192.168.21.74:5432/broker_rasa_db
?useSSL=false
query
:
'
select
*
from
events
WHERE
id
>
%d
order
by
id
asc'
logging.level.root
:
INFO
logging.level.root
:
DEBUG
logging.pattern.console
:
'
%d{dd-MM-yyyy
HH:mm:ss.SSS}
%magenta([%thread])
%highlight(%-5level)
%logger.%M
-
%msg%n'
logging.level.com.zaxxer.hikari
:
ERROR
...
...
src/main/resources/config/mappers/bytebot/mysql/ActionMapper.xml
View file @
f2cd78e8
...
...
@@ -7,10 +7,10 @@
<select
id=
"getSummaryActionsByGoal"
resultType=
"ActionSummaryByGoal"
flushCache=
"true"
>
SELECT COUNT(BAS.ASESS_ID) as count,
G.GOAL_IDENT as goal
FROM
BBOT
_ACTION_SESSION BAS
LEFT JOIN
BBOT
_ACTION A ON BAS.ACTION_ID = A.ACTION_ID
LEFT JOIN
BBOT
_GOAL G ON G.GOAL_ID = A.GOAL_ID
WHERE A.
ACTION_RGOAL = 'Y'
FROM
AVB
_ACTION_SESSION BAS
LEFT JOIN
AVB
_ACTION A ON BAS.ACTION_ID = A.ACTION_ID
LEFT JOIN
AVB
_GOAL G ON G.GOAL_ID = A.GOAL_ID
WHERE A.
GOAL_ID IS NOT NULL
AND BAS.ASESS_DATE
<
= #{endDate} AND BAS.ASESS_DATE
>
= #{startDate}
GROUP BY G.GOAL_ID
</select>
...
...
src/main/resources/config/mappers/bytebot/mysql/MessageMapper.xml
View file @
f2cd78e8
...
...
@@ -6,13 +6,13 @@
<select
id=
"countMessagesInRange"
resultType=
"int"
flushCache=
"true"
>
SELECT COUNT(MESSA_ID)
FROM
BBOT
_MESSAGE
FROM
AVB
_MESSAGE
WHERE MESSA_DATE
<
= #{endDate} AND MESSA_DATE
>
= #{startDate}
</select>
<select
id=
"countMessagesInRangeForHour"
resultType=
"int"
flushCache=
"true"
>
SELECT COUNT(MESSA_ID)
FROM
BBOT
_MESSAGE
FROM
AVB
_MESSAGE
WHERE MESSA_DATE
<
= #{endDate} AND MESSA_DATE
>
= #{startDate}
</select>
...
...
@@ -23,8 +23,8 @@
COUNT(MESSA_ID) AS count,
I.INTEN_IDENT as identifier,
I.INTEN_ID as id
FROM
BBOT
_MESSAGE M
LEFT JOIN
BBOT
_INTENT I
FROM
AVB
_MESSAGE M
LEFT JOIN
AVB
_INTENT I
ON M.INTEN_ID = I.INTEN_ID
WHERE M.INTEN_ID IS NOT NULL
AND M.MESSA_DATE
<
= #{endDate} AND M.MESSA_DATE
>
= #{startDate}
...
...
@@ -38,21 +38,21 @@
COUNT(MESSA_ID) AS count,
I.INTEN_IDENT as identifier,
I.INTEN_ID as id
FROM
BBOT
_MESSAGE M
LEFT JOIN
BBOT
_INTENT I
FROM
AVB
_MESSAGE M
LEFT JOIN
AVB
_INTENT I
ON M.INTEN_ID = I.INTEN_ID
WHERE M.INTEN_ID IS NOT NULL
AND M.MESSA_DATE
<
= #{endDate} AND M.MESSA_DATE
>
= #{startDate}
GROUP BY M.MESSA_CONT, I.INTEN_ID
ORDER BY count DESC) as
BBOT
_SUMMARY
ORDER BY count DESC) as
AVB
_SUMMARY
</select>
<select
id=
"getSummaryByIntent"
resultType=
"SummaryMessageByIntent"
flushCache=
"true"
>
SELECT COUNT(MESSA_ID) AS count,
I.INTEN_IDENT as identifier,
I.INTEN_ID as id
FROM
BBOT
_MESSAGE M
LEFT JOIN
BBOT
_INTENT I
FROM
AVB
_MESSAGE M
LEFT JOIN
AVB
_INTENT I
ON M.INTEN_ID = I.INTEN_ID
WHERE M.INTEN_ID IS NOT NULL
AND MESSA_DATE
<
= #{endDate} AND MESSA_DATE
>
= #{startDate}
...
...
@@ -64,7 +64,7 @@
SELECT
COUNT(MESSA_ID) as count,
MESSA_CONT as identifier
FROM
BBOT
_MESSAGE M
FROM
AVB
_MESSAGE M
WHERE INTEN_ID IS NULL
AND MESSA_DATE
<
= #{endDate} AND MESSA_DATE
>
= #{startDate}
GROUP BY MESSA_CONT
...
...
@@ -75,17 +75,17 @@
SELECT count(*) FROM (SELECT
COUNT(MESSA_ID) as count,
MESSA_CONT as identifier
FROM
BBOT
_MESSAGE M
FROM
AVB
_MESSAGE M
WHERE INTEN_ID IS NULL
AND M.MESSA_DATE
<
= #{endDate} AND M.MESSA_DATE
>
= #{startDate}
GROUP BY MESSA_CONT
ORDER BY count DESC, identifier DESC) as
BBOT
_SUMMARY
ORDER BY count DESC, identifier DESC) as
AVB
_SUMMARY
</select>
<select
id=
"countByIntentAndRange"
resultType=
"int"
flushCache=
"true"
>
SELECT
COUNT(MESSA_ID)
FROM
BBOT
_MESSAGE
FROM
AVB
_MESSAGE
WHERE INTEN_ID IS NOT NULL
AND MESSA_DATE
<
= #{endDate} AND MESSA_DATE
>
= #{startDate}
</select>
...
...
@@ -93,7 +93,7 @@
<select
id=
"countBySentencesAndRange"
resultType=
"int"
flushCache=
"true"
>
SELECT
COUNT(MESSA_ID)
FROM
BBOT
_MESSAGE WHERE INTEN_ID IS NULL
FROM
AVB
_MESSAGE WHERE INTEN_ID IS NULL
AND MESSA_DATE
<
= #{endDate} AND MESSA_DATE
>
= #{startDate}
</select>
...
...
@@ -102,19 +102,19 @@
(
SELECT COUNT(MESSA_ID) as COUNT_MESSA,
S.USER_ID
FROM
BBOT
_MESSAGE M
LEFT JOIN
BBOT
_SESSION S ON M.SESSION_ID = S.SESSION_ID
FROM
AVB
_MESSAGE M
LEFT JOIN
AVB
_SESSION S ON M.SESSION_ID = S.SESSION_ID
WHERE M.INTEN_ID IS NOT NULL AND M.MESSA_DATE
<
#{endDate} AND M.MESSA_DATE
>
= #{startDate}
GROUP BY S.USER_ID
)
BBOT
_INTENT_CUSTOMER
)
AVB
_INTENT_CUSTOMER
</select>
<select
id=
"countMessageByIntent"
resultType=
"MessageByIntent"
flushCache=
"true"
>
SELECT
COUNT(M.MESSA_ID) as count,
I.INTEN_IDENT as identifier
FROM
BBOT
_MESSAGE M
LEFT JOIN
BBOT
_INTENT I
FROM
AVB
_MESSAGE M
LEFT JOIN
AVB
_INTENT I
ON M.INTEN_ID = I.INTEN_ID
WHERE M.INTEN_ID IS NOT NULL AND M.MESSA_DATE
<
#{endDate} AND M.MESSA_DATE
>
= #{startDate}
GROUP BY I.INTEN_IDENT
...
...
@@ -123,7 +123,7 @@
<select
id=
"countCustomersBySentence"
resultType=
"Double"
flushCache=
"true"
>
SELECT COUNT(distinct USER_ID)
FROM
BBOT
_SESSION
WHERE SESSION_ID in (select DISTINCT SESSION_ID from
BBOT
_MESSAGE bm WHERE MESSA_CONT = #{sentence})
FROM
AVB
_SESSION
WHERE SESSION_ID in (select DISTINCT SESSION_ID from
AVB
_MESSAGE bm WHERE MESSA_CONT = #{sentence})
</select>
</mapper>
src/main/resources/config/mappers/bytebot/mysql/ResponseMapper.xml
View file @
f2cd78e8
...
...
@@ -6,7 +6,7 @@
<select
id=
"countMessagesInRange"
resultType=
"int"
flushCache=
"true"
>
SELECT COUNT(RESPO_ID)
FROM
BBOT
_RESPONSE
FROM
AVB
_RESPONSE
WHERE RESPO_DATE
<
= #{endDate} AND RESPO_DATE
>
= #{startDate}
</select>
</mapper>
src/main/resources/config/mappers/bytebot/mysql/SessionMapper.xml
View file @
f2cd78e8
...
...
@@ -6,7 +6,7 @@
<select
id=
"getLastDateInRange"
resultType=
"java.sql.Timestamp"
flushCache=
"true"
>
select SESSION_LEDAT
FROM
BBOT
_SESSION bas
FROM
AVB
_SESSION bas
WHERE SESSION_LEDAT
<
= #{endDate}
AND SESSION_LEDAT
>
= #{startDate}
ORDER BY SESSION_LEDAT DESC LIMIT 1
...
...
@@ -14,7 +14,7 @@
<select
id=
"countSessionsInRange"
resultType=
"int"
flushCache=
"true"
>
select COUNT(SESSION_ID)
FROM
BBOT
_SESSION bas
FROM
AVB
_SESSION bas
WHERE SESSION_DATE
<
= #{endDate}
AND SESSION_DATE
>
= #{startDate}
</select>
...
...
@@ -23,16 +23,16 @@
select avg(SESSION_CANT) FROM
(
select count(USER_ID) as SESSION_CANT
from
BBOT
_SESSION bas
from
AVB
_SESSION bas
WHERE SESSION_DATE
<
= #{endDate} AND SESSION_DATE
>
= #{startDate} GROUP BY USER_ID
)
BBOT
_SESSION_COUNT
)
AVB
_SESSION_COUNT
</select>
<select
id=
"avgFirstResponseTime"
resultType=
"Long"
flushCache=
"true"
>
SELECT AVG(RESP_TIME)
FROM (
select TIMESTAMPDIFF(SECOND, SESSION_DATE, SESSION_FRDAT) AS RESP_TIME
from
BBOT
_SESSION bs WHERE SESSION_FRDAT IS NOT NULL
from
AVB
_SESSION bs WHERE SESSION_FRDAT IS NOT NULL
AND SESSION_DATE
<
= #{endDate}
AND SESSION_DATE
>
= #{startDate}
) RESPONSE_DIF
...
...
src/main/resources/config/mappers/bytebot/postgres/ActionMapper.xml
View file @
f2cd78e8
...
...
@@ -7,10 +7,10 @@
<select
id=
"getSummaryActionsByGoal"
resultType=
"ActionSummaryByGoal"
flushCache=
"true"
>
SELECT COUNT(BAS.ASESS_ID) as count,
G.GOAL_IDENT as goal
FROM
BBOT
_ACTION_SESSION BAS
LEFT JOIN
BBOT
_ACTION A ON BAS.ACTION_ID = A.ACTION_ID
LEFT JOIN
BBOT
_GOAL G ON G.GOAL_ID = A.GOAL_ID
WHERE A.
ACTION_RGOAL = 'Y'
FROM
AVB
_ACTION_SESSION BAS
LEFT JOIN
AVB
_ACTION A ON BAS.ACTION_ID = A.ACTION_ID
LEFT JOIN
AVB
_GOAL G ON G.GOAL_ID = A.GOAL_ID
WHERE A.
GOAL_ID IS NOT NULL
AND BAS.ASESS_DATE
<
= #{endDate} AND BAS.ASESS_DATE
>
= #{startDate}
GROUP BY G.GOAL_ID
</select>
...
...
src/main/resources/config/mappers/bytebot/postgres/MessageMapper.xml
View file @
f2cd78e8
...
...
@@ -6,13 +6,13 @@
<select
id=
"countMessagesInRange"
resultType=
"int"
flushCache=
"true"
>
SELECT COUNT(MESSA_ID)
FROM
BBOT
_MESSAGE
FROM
AVB
_MESSAGE
WHERE MESSA_DATE
<
= #{endDate} AND MESSA_DATE
>
= #{startDate}
</select>
<select
id=
"countMessagesInRangeForHour"
resultType=
"int"
flushCache=
"true"
>
SELECT COUNT(MESSA_ID)
FROM
BBOT
_MESSAGE
FROM
AVB
_MESSAGE
WHERE MESSA_DATE
<
= #{endDate} AND MESSA_DATE
>
= #{startDate}
</select>
...
...
@@ -23,8 +23,8 @@
COUNT(MESSA_ID) AS count,
I.INTEN_IDENT as identifier,
I.INTEN_ID as id
FROM
BBOT
_MESSAGE M
LEFT JOIN
BBOT
_INTENT I
FROM
AVB
_MESSAGE M
LEFT JOIN
AVB
_INTENT I
ON M.INTEN_ID = I.INTEN_ID
WHERE M.INTEN_ID IS NOT NULL
AND M.MESSA_DATE
<
= #{endDate} AND M.MESSA_DATE
>
= #{startDate}
...
...
@@ -38,21 +38,21 @@
COUNT(MESSA_ID) AS count,
I.INTEN_IDENT as identifier,
I.INTEN_ID as id
FROM
BBOT
_MESSAGE M
LEFT JOIN
BBOT
_INTENT I
FROM
AVB
_MESSAGE M
LEFT JOIN
AVB
_INTENT I
ON M.INTEN_ID = I.INTEN_ID
WHERE M.INTEN_ID IS NOT NULL
AND M.MESSA_DATE
<
= #{endDate} AND M.MESSA_DATE
>
= #{startDate}
GROUP BY M.MESSA_CONT, I.INTEN_ID
ORDER BY count DESC) as
BBOT
_SUMMARY
ORDER BY count DESC) as
AVB
_SUMMARY
</select>
<select
id=
"getSummaryByIntent"
resultType=
"SummaryMessageByIntent"
flushCache=
"true"
>
SELECT COUNT(MESSA_ID) AS count,
I.INTEN_IDENT as identifier,
I.INTEN_ID as id
FROM
BBOT
_MESSAGE M
LEFT JOIN
BBOT
_INTENT I
FROM
AVB
_MESSAGE M
LEFT JOIN
AVB
_INTENT I
ON M.INTEN_ID = I.INTEN_ID
WHERE M.INTEN_ID IS NOT NULL
AND MESSA_DATE
<
= #{endDate} AND MESSA_DATE
>
= #{startDate}
...
...
@@ -64,7 +64,7 @@
SELECT
COUNT(MESSA_ID) as count,
MESSA_CONT as identifier
FROM
BBOT
_MESSAGE M
FROM
AVB
_MESSAGE M
WHERE INTEN_ID IS NULL
AND MESSA_DATE
<
= #{endDate} AND MESSA_DATE
>
= #{startDate}
GROUP BY MESSA_CONT
...
...
@@ -75,17 +75,17 @@
SELECT count(*) FROM (SELECT
COUNT(MESSA_ID) as count,
MESSA_CONT as identifier
FROM
BBOT
_MESSAGE M
FROM
AVB
_MESSAGE M
WHERE INTEN_ID IS NULL
AND M.MESSA_DATE
<
= #{endDate} AND M.MESSA_DATE
>
= #{startDate}
GROUP BY MESSA_CONT
ORDER BY count DESC, identifier DESC) as
BBOT
_SUMMARY
ORDER BY count DESC, identifier DESC) as
AVB
_SUMMARY
</select>
<select
id=
"countByIntentAndRange"
resultType=
"int"
flushCache=
"true"
>
SELECT
COUNT(MESSA_ID)
FROM
BBOT
_MESSAGE
FROM
AVB
_MESSAGE
WHERE INTEN_ID IS NOT NULL
AND MESSA_DATE
<
= #{endDate} AND MESSA_DATE
>
= #{startDate}
</select>
...
...
@@ -93,7 +93,7 @@
<select
id=
"countBySentencesAndRange"
resultType=
"int"
flushCache=
"true"
>
SELECT
COUNT(MESSA_ID)
FROM
BBOT
_MESSAGE WHERE INTEN_ID IS NULL
FROM
AVB
_MESSAGE WHERE INTEN_ID IS NULL
AND MESSA_DATE
<
= #{endDate} AND MESSA_DATE
>
= #{startDate}
</select>
...
...
@@ -102,19 +102,19 @@
(
SELECT COUNT(MESSA_ID) as COUNT_MESSA,
S.USER_ID
FROM
BBOT
_MESSAGE M
LEFT JOIN
BBOT
_SESSION S ON M.SESSION_ID = S.SESSION_ID
FROM
AVB
_MESSAGE M
LEFT JOIN
AVB
_SESSION S ON M.SESSION_ID = S.SESSION_ID
WHERE M.INTEN_ID IS NOT NULL AND M.MESSA_DATE
<
#{endDate} AND M.MESSA_DATE
>
= #{startDate}
GROUP BY S.USER_ID
)
BBOT
_INTENT_CUSTOMER
)
AVB
_INTENT_CUSTOMER
</select>
<select
id=
"countMessageByIntent"
resultType=
"MessageByIntent"
flushCache=
"true"
>
SELECT
COUNT(M.MESSA_ID) as count,
I.INTEN_IDENT as identifier
FROM
BBOT
_MESSAGE M
LEFT JOIN
BBOT
_INTENT I
FROM
AVB
_MESSAGE M
LEFT JOIN
AVB
_INTENT I
ON M.INTEN_ID = I.INTEN_ID
WHERE M.INTEN_ID IS NOT NULL AND M.MESSA_DATE
<
#{endDate} AND M.MESSA_DATE
>
= #{startDate}
GROUP BY I.INTEN_IDENT
...
...
@@ -123,7 +123,7 @@
<select
id=
"countCustomersBySentence"
resultType=
"int"
flushCache=
"true"
>
SELECT COUNT(distinct USER_ID)
FROM
BBOT
_SESSION
WHERE SESSION_ID in (select DISTINCT SESSION_ID from
BBOT
_MESSAGE bm WHERE MESSA_CONT = #{sentence})
FROM
AVB
_SESSION
WHERE SESSION_ID in (select DISTINCT SESSION_ID from
AVB
_MESSAGE bm WHERE MESSA_CONT = #{sentence})
</select>
</mapper>
src/main/resources/config/mappers/bytebot/postgres/ResponseMapper.xml
View file @
f2cd78e8
...
...
@@ -6,7 +6,7 @@
<select
id=
"countMessagesInRange"
resultType=
"int"
flushCache=
"true"
>
SELECT COUNT(RESPO_ID)
FROM
BBOT
_RESPONSE
FROM
AVB
_RESPONSE
WHERE RESPO_DATE
<
= #{endDate} AND RESPO_DATE
>
= #{startDate}
</select>
</mapper>
src/main/resources/config/mappers/bytebot/postgres/SessionMapper.xml
View file @
f2cd78e8
...
...
@@ -6,7 +6,7 @@
<select
id=
"getLastDateInRange"
resultType=
"java.sql.Timestamp"
flushCache=
"true"
>
select SESSION_LEDAT
FROM
BBOT
_SESSION bas
FROM
AVB
_SESSION bas
WHERE SESSION_LEDAT
<
= #{endDate}
AND SESSION_LEDAT
>
= #{startDate}
ORDER BY SESSION_LEDAT DESC LIMIT 1
...
...
@@ -14,7 +14,7 @@
<select
id=
"countSessionsInRange"
resultType=
"int"
flushCache=
"true"
>
select COUNT(SESSION_ID)
FROM
BBOT
_SESSION bas
FROM
AVB
_SESSION bas
WHERE SESSION_DATE
<
= #{endDate}
AND SESSION_DATE
>
= #{startDate}
</select>
...
...
@@ -23,9 +23,9 @@
select avg(SESSION_CANT) FROM
(
select count(USER_ID) as SESSION_CANT
from
BBOT
_SESSION bas
from
AVB
_SESSION bas
WHERE SESSION_DATE
<
= #{endDate} AND SESSION_DATE
>
= #{startDate} GROUP BY USER_ID
)
BBOT
_SESSION_COUNT
)
AVB
_SESSION_COUNT
</select>
<select
id=
"avgFirstResponseTime"
resultType=
"Double"
flushCache=
"true"
>
...
...
@@ -35,7 +35,7 @@
DATE_PART('hour', SESSION_FRDAT - SESSION_DATE)) * 60 +
DATE_PART('minute', SESSION_FRDAT - SESSION_DATE)) * 60 +
DATE_PART('second', SESSION_FRDAT - SESSION_DATE) AS RESP_TIME
from
BBOT
_SESSION bs WHERE SESSION_FRDAT IS NOT null
from
AVB
_SESSION bs WHERE SESSION_FRDAT IS NOT null
AND SESSION_DATE
<
= #{endDate}
AND SESSION_DATE
>
= #{startDate}
) RESPONSE_DIF
...
...
src/main/resources/config/mappers/etl/mysql/MessageMapper.xml
View file @
f2cd78e8
...
...
@@ -7,7 +7,7 @@
<select
id=
"getLastCorrelativeBySession"
resultType=
"int"
flushCache=
"true"
>
SELECT IFNULL( (SELECT
MESSA_CORRE
FROM
BBOT
_MESSAGE
FROM
AVB
_MESSAGE
WHERE SESSION_ID = ${sessionId}
ORDER BY MESSA_CORRE DESC
LIMIT 1) ,0) as correlative
...
...
src/main/resources/config/mappers/etl/mysql/ResponseMapper.xml
View file @
f2cd78e8
...
...
@@ -7,7 +7,7 @@
<select
id=
"getLastCorrelativeBySession"
resultType=
"int"
flushCache=
"true"
>
SELECT IFNULL( (SELECT
RESPO_CORR
FROM
BBOT
_RESPONSE
FROM
AVB
_RESPONSE
WHERE SESSION_ID = ${sessionId}
ORDER BY RESPO_CORR DESC
LIMIT 1) ,0) as correlative
...
...
src/main/resources/config/mappers/etl/mysql/SessionMapper.xml
View file @
f2cd78e8
...
...
@@ -10,9 +10,9 @@
SESSION_DATE as sessionDate,
SESSION_LEDAT as lastEventDate,
SESSION_FRDAT as responseDate,
CHANN_ID
as channelId,
chan_id
as channelId,
USER_ID as userId
FROM
BBOT
_SESSION
FROM
AVB
_SESSION
WHERE USER_ID = ${userId}
ORDER BY SESSION_DATE DESC
LIMIT 1
...
...
@@ -20,7 +20,7 @@
<update
id=
"updateLastEventDate"
flushCache=
"true"
>
UPDATE
BBOT
_SESSION SET
AVB
_SESSION SET
SESSION_LEDAT = ${lastEventDate}
WHERE SESSION_ID = ${sessionID}
</update>
...
...
src/main/resources/config/mappers/etl/postgres/MessageMapper.xml
View file @
f2cd78e8
...
...
@@ -7,7 +7,7 @@
<select
id=
"getLastCorrelativeBySession"
resultType=
"int"
flushCache=
"true"
>
SELECT coalesce( (SELECT
MESSA_CORRE
FROM
BBOT
_MESSAGE
FROM
AVB
_MESSAGE
WHERE SESSION_ID = ${sessionId}
ORDER BY MESSA_CORRE DESC
LIMIT 1) ,0) as correlative
...
...
src/main/resources/config/mappers/etl/postgres/ResponseMapper.xml
View file @
f2cd78e8
...
...
@@ -7,7 +7,7 @@
<select
id=
"getLastCorrelativeBySession"
resultType=
"int"
flushCache=
"true"
>
SELECT coalesce( (SELECT
RESPO_CORR
FROM
BBOT
_RESPONSE
FROM
AVB
_RESPONSE
WHERE SESSION_ID = ${sessionId}
ORDER BY RESPO_CORR DESC
LIMIT 1) ,0) as correlative
...
...
src/main/resources/config/mappers/etl/postgres/SessionMapper.xml
View file @
f2cd78e8
...
...
@@ -10,9 +10,9 @@
SESSION_DATE as sessionDate,
SESSION_LEDAT as lastEventDate,
SESSION_FRDAT as responseDate,
CHANN_ID
as channelId,
chan_id
as channelId,
USER_ID as userId
FROM
BBOT
_SESSION
FROM
AVB
_SESSION
WHERE USER_ID = ${userId}
ORDER BY SESSION_DATE DESC
LIMIT 1
...
...
@@ -20,7 +20,7 @@
<update
id=
"updateLastEventDate"
flushCache=
"true"
>
UPDATE
BBOT
_SESSION SET
AVB
_SESSION SET
SESSION_LEDAT = ${lastEventDate}
WHERE SESSION_ID = ${sessionID}
</update>
...
...
src/main/resources/mybatis.properties
View file @
f2cd78e8
database-type-xdf
=
mysql
database-type-xdf
=
postgres
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment