Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
S
service-campaign
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Nguyen Ha
service-campaign
Commits
f6703e9b
Commit
f6703e9b
authored
5 years ago
by
Vu Duy Anh
Browse files
Options
Browse Files
Download
Plain Diff
anhvd accept merge
parents
2f325328
5e2067f7
Changes
11
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
191 additions
and
128 deletions
+191
-128
src/main/java/com/viettel/campaign/repository/ccms_full/ApParamRepository.java
...ttel/campaign/repository/ccms_full/ApParamRepository.java
+1
-1
src/main/java/com/viettel/campaign/repository/ccms_full/ApParamRepositoryCustom.java
...ampaign/repository/ccms_full/ApParamRepositoryCustom.java
+0
-8
src/main/java/com/viettel/campaign/repository/ccms_full/TicketRepository.java
...ettel/campaign/repository/ccms_full/TicketRepository.java
+5
-0
src/main/java/com/viettel/campaign/repository/ccms_full/impl/AppParamRepositoryImpl.java
...ign/repository/ccms_full/impl/AppParamRepositoryImpl.java
+0
-13
src/main/java/com/viettel/campaign/repository/ccms_full/impl/CampaignCustomerListColumnRepositoryImpl.java
...s_full/impl/CampaignCustomerListColumnRepositoryImpl.java
+1
-3
src/main/java/com/viettel/campaign/repository/ccms_full/impl/TicketRepositoryImpl.java
...paign/repository/ccms_full/impl/TicketRepositoryImpl.java
+0
-1
src/main/java/com/viettel/campaign/service/TicketService.java
...main/java/com/viettel/campaign/service/TicketService.java
+2
-2
src/main/java/com/viettel/campaign/service/impl/TicketServiceImpl.java
.../com/viettel/campaign/service/impl/TicketServiceImpl.java
+23
-10
src/main/java/com/viettel/campaign/web/rest/CampaignController.java
...ava/com/viettel/campaign/web/rest/CampaignController.java
+28
-89
src/main/java/com/viettel/campaign/web/rest/CampaignExecuteController.java
.../viettel/campaign/web/rest/CampaignExecuteController.java
+129
-0
src/main/java/com/viettel/campaign/web/rest/TicketController.java
.../java/com/viettel/campaign/web/rest/TicketController.java
+2
-1
No files found.
src/main/java/com/viettel/campaign/repository/ccms_full/ApParamRepository.java
View file @
f6703e9b
...
...
@@ -11,7 +11,7 @@ import org.springframework.stereotype.Repository;
import
java.util.List
;
@Repository
public
interface
ApParamRepository
extends
JpaRepository
<
ApParam
,
Long
>
,
ApParamRepositoryCustom
{
public
interface
ApParamRepository
extends
JpaRepository
<
ApParam
,
Long
>
{
Page
<
ApParam
>
findAll
(
Pageable
pageable
);
...
...
This diff is collapsed.
Click to expand it.
src/main/java/com/viettel/campaign/repository/ccms_full/ApParamRepositoryCustom.java
deleted
100644 → 0
View file @
2f325328
package
com.viettel.campaign.repository.ccms_full
;
import
org.springframework.stereotype.Repository
;
@Repository
public
interface
ApParamRepositoryCustom
{
}
This diff is collapsed.
Click to expand it.
src/main/java/com/viettel/campaign/repository/ccms_full/TicketRepository.java
View file @
f6703e9b
package
com.viettel.campaign.repository.ccms_full
;
import
com.viettel.campaign.config.DataSourceQualify
;
import
com.viettel.campaign.model.ccms_full.Ticket
;
import
org.springframework.stereotype.Repository
;
import
org.springframework.transaction.annotation.Transactional
;
@Repository
@Transactional
(
DataSourceQualify
.
CCMS_FULL
)
public
interface
TicketRepository
extends
BaseRepository
<
Ticket
>,
TicketRepositoryCustom
{
}
This diff is collapsed.
Click to expand it.
src/main/java/com/viettel/campaign/repository/ccms_full/impl/AppParamRepositoryImpl.java
deleted
100644 → 0
View file @
2f325328
package
com.viettel.campaign.repository.ccms_full.impl
;
import
com.viettel.campaign.repository.ccms_full.ApParamRepositoryCustom
;
import
org.springframework.stereotype.Repository
;
import
org.springframework.transaction.annotation.Transactional
;
@Repository
@Transactional
public
class
AppParamRepositoryImpl
implements
ApParamRepositoryCustom
{
}
This diff is collapsed.
Click to expand it.
src/main/java/com/viettel/campaign/repository/ccms_full/impl/CampaignCustomerListColumnRepositoryImpl.java
View file @
f6703e9b
...
...
@@ -22,7 +22,6 @@ import java.util.List;
public
class
CampaignCustomerListColumnRepositoryImpl
implements
CampaignCustomerListColumnRepositoryCustom
{
@Override
public
List
<
CampaignCustomerListColumnRequestDTO
>
getCustomerInfor
(
Long
companySiteId
,
Long
customerId
,
Long
campaignId
)
{
ResultDTO
result
=
new
ResultDTO
();
SessionFactory
sessionFactory
=
HibernateUtil
.
getSessionFactory
();
List
<
CampaignCustomerListColumnRequestDTO
>
data
=
new
ArrayList
<>();
...
...
@@ -68,8 +67,7 @@ public class CampaignCustomerListColumnRepositoryImpl implements CampaignCustome
data
=
query
.
list
();
}
catch
(
Exception
e
)
{
result
.
setErrorCode
(
Constants
.
ApiErrorCode
.
ERROR
);
result
.
setDescription
(
Constants
.
ApiErrorDesc
.
ERROR
);
e
.
printStackTrace
();
}
finally
{
session
.
close
();
}
...
...
This diff is collapsed.
Click to expand it.
src/main/java/com/viettel/campaign/repository/ccms_full/impl/TicketRepositoryImpl.java
View file @
f6703e9b
...
...
@@ -20,7 +20,6 @@ public class TicketRepositoryImpl implements TicketRepositoryCustom {
@PersistenceContext
(
unitName
=
DataSourceQualify
.
JPA_UNIT_NAME_CCMS_FULL
)
EntityManager
entityManager
;
@Override
public
List
<
TicketDTO
>
getHistory
(
String
customerId
,
Pageable
pageable
)
{
List
<
TicketDTO
>
lst
=
new
ArrayList
<>();
String
expression
=
new
StringBuilder
()
...
...
This diff is collapsed.
Click to expand it.
src/main/java/com/viettel/campaign/service/TicketService.java
View file @
f6703e9b
package
com.viettel.campaign.service
;
import
java.util.Map
;
import
com.viettel.campaign.web.dto.ResultDTO
;
public
interface
TicketService
{
Map
getHistory
(
int
page
,
int
pageSize
,
String
sort
,
String
customerId
);
ResultDTO
getHistory
(
int
page
,
int
pageSize
,
String
sort
,
String
customerId
);
}
This diff is collapsed.
Click to expand it.
src/main/java/com/viettel/campaign/service/impl/TicketServiceImpl.java
View file @
f6703e9b
...
...
@@ -3,6 +3,8 @@ package com.viettel.campaign.service.impl;
import
com.viettel.campaign.config.DataSourceQualify
;
import
com.viettel.campaign.repository.ccms_full.TicketRepository
;
import
com.viettel.campaign.service.TicketService
;
import
com.viettel.campaign.utils.Constants
;
import
com.viettel.campaign.web.dto.ResultDTO
;
import
com.viettel.campaign.web.dto.TicketDTO
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.domain.PageRequest
;
...
...
@@ -11,9 +13,7 @@ import org.springframework.stereotype.Service;
import
org.springframework.transaction.annotation.Transactional
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
@Service
public
class
TicketServiceImpl
implements
TicketService
{
...
...
@@ -21,16 +21,29 @@ public class TicketServiceImpl implements TicketService {
@Autowired
TicketRepository
ticketRepository
;
@Override
@Transactional
(
DataSourceQualify
.
CCMS_FULL
)
public
Map
getHistory
(
int
page
,
int
pageSize
,
String
sort
,
String
customerId
)
{
Map
result
=
new
HashMap
();
@Override
@Transactional
(
DataSourceQualify
.
CCMS_FULL
)
public
ResultDTO
getHistory
(
int
page
,
int
pageSize
,
String
sort
,
String
customerId
)
{
ResultDTO
result
=
new
ResultDTO
();
List
<
TicketDTO
>
lst
=
new
ArrayList
<>();
lst
=
ticketRepository
.
getHistory
(
customerId
,
PageRequest
.
of
(
page
,
pageSize
,
Sort
.
by
(
sort
)));
result
.
put
(
"totalItem"
,
lst
.
size
());
result
.
put
(
"tickets"
,
lst
);
try
{
Integer
c
=
ticketRepository
.
getHistory
(
customerId
,
null
).
size
();
if
(
c
>
0
)
{
lst
=
ticketRepository
.
getHistory
(
customerId
,
PageRequest
.
of
(
page
,
pageSize
,
Sort
.
by
(
sort
)));
result
.
setErrorCode
(
Constants
.
ApiErrorCode
.
SUCCESS
);
result
.
setDescription
(
Constants
.
ApiErrorDesc
.
SUCCESS
);
result
.
setListData
(
lst
);
result
.
setTotalRow
(
c
);
}
else
{
result
.
setErrorCode
(
Constants
.
ApiErrorCode
.
SUCCESS
);
result
.
setDescription
(
Constants
.
ApiErrorDesc
.
SUCCESS
);
result
.
setTotalRow
(
0
);
}
}
catch
(
Exception
e
)
{
result
.
setErrorCode
(
Constants
.
ApiErrorCode
.
ERROR
);
result
.
setDescription
(
Constants
.
ApiErrorDesc
.
ERROR
);
}
return
result
;
}
...
...
This diff is collapsed.
Click to expand it.
src/main/java/com/viettel/campaign/web/rest/CampaignController.java
View file @
f6703e9b
...
...
@@ -44,42 +44,6 @@ public class CampaignController {
@Autowired
CampaignExecuteService
campaignExecuteService
;
@PostMapping
(
"/searchCampaignExecute"
)
@ResponseBody
public
ResponseEntity
<
ResultDTO
>
searchCampaignExecute
(
@RequestBody
CampaignRequestDTO
requestDto
,
HttpServletRequest
request
)
{
String
xAuthToken
=
request
.
getHeader
(
"X-Auth-Token"
);
ResultDTO
result
=
campaignExecuteService
.
searchCampaignExecute
(
requestDto
,
xAuthToken
);
return
new
ResponseEntity
<>(
result
,
HttpStatus
.
OK
);
}
@PostMapping
(
"/getExecuteCampaign"
)
@ResponseBody
public
ResponseEntity
<
ResultDTO
>
getExecuteCampaign
(
@RequestBody
CampaignRequestDTO
requestDto
)
{
ResultDTO
result
=
campaignExecuteService
.
getExecuteCampaign
(
requestDto
);
return
new
ResponseEntity
<>(
result
,
HttpStatus
.
OK
);
}
@PostMapping
(
"/getCustomer"
)
@ResponseBody
public
ResponseEntity
<
ResultDTO
>
getCustomer
(
@RequestBody
CampaignCustomerDTO
requestDto
)
{
ResultDTO
result
=
campaignExecuteService
.
getCustomer
(
requestDto
);
return
new
ResponseEntity
<>(
result
,
HttpStatus
.
OK
);
}
@PostMapping
(
"/getCustomerComplete"
)
@ResponseBody
public
ResponseEntity
<
ResultDTO
>
getCustomerComplete
(
@RequestBody
ReceiveCustLogDTO
requestDto
)
{
ResultDTO
result
=
campaignExecuteService
.
getCustomerComplete
(
requestDto
);
return
new
ResponseEntity
<>(
result
,
HttpStatus
.
OK
);
}
@PostMapping
(
"/getCallLog"
)
@ResponseBody
public
ResponseEntity
<
ResultDTO
>
getCallLog
(
@RequestBody
ReceiveCustLogDTO
requestDto
)
{
ResultDTO
result
=
campaignExecuteService
.
getCallLog
(
requestDto
);
return
new
ResponseEntity
<>(
result
,
HttpStatus
.
OK
);
}
@PostMapping
(
"/callCustomer"
)
@ResponseBody
public
ResponseEntity
<
ResultDTO
>
callCustomer
(
@RequestBody
ContactCustResultDTO
requestDto
)
{
...
...
@@ -87,13 +51,6 @@ public class CampaignController {
return
new
ResponseEntity
<>(
result
,
HttpStatus
.
OK
);
}
@PostMapping
(
"/getAgentLogout"
)
@ResponseBody
public
ResponseEntity
<
ResultDTO
>
getAgentLogout
(
@RequestBody
CampaignRequestDTO
requestDto
)
{
ResultDTO
result
=
campaignExecuteService
.
getAgentLogout
(
requestDto
);
return
new
ResponseEntity
<>(
result
,
HttpStatus
.
OK
);
}
@RequestMapping
(
value
=
"/search"
,
method
=
RequestMethod
.
POST
)
public
ResponseEntity
<
ResultDTO
>
search
(
@RequestBody
CampaignRequestDTO
requestDto
)
{
ResultDTO
result
=
campaignService
.
search
(
requestDto
);
...
...
@@ -131,45 +88,6 @@ public class CampaignController {
return
new
ResponseEntity
<>(
list
,
HttpStatus
.
OK
);
}
@PostMapping
(
"/searchInteractiveResult"
)
@ResponseBody
public
ResponseEntity
<
ResultDTO
>
searchInteractiveResult
(
@RequestBody
CampaignRequestDTO
dto
)
throws
Exception
{
ResultDTO
result
=
campaignExecuteService
.
searchInteractiveResult
(
dto
);
return
new
ResponseEntity
<>(
result
,
HttpStatus
.
OK
);
}
@PostMapping
(
"/exportInteractiveResult"
)
@ResponseBody
public
ResponseEntity
<?>
exportInteractiveResult
(
HttpServletResponse
response
,
@RequestBody
CampaignRequestDTO
dto
)
{
XSSFWorkbook
workbook
=
null
;
byte
[]
contentReturn
=
null
;
try
{
String
fileName
=
"report_campaign_exec_interactive_result.xlsx"
;
response
.
setHeader
(
"Content-Disposition"
,
"attachment; filename="
+
fileName
);
OutputStream
outputStream
;
workbook
=
campaignExecuteService
.
exportInteractiveResult
(
dto
);
outputStream
=
response
.
getOutputStream
();
workbook
.
write
(
outputStream
);
ByteArrayOutputStream
byteArrayOutputStream
=
new
ByteArrayOutputStream
();
workbook
.
write
(
byteArrayOutputStream
);
contentReturn
=
byteArrayOutputStream
.
toByteArray
();
}
catch
(
Exception
e
)
{
logger
.
error
(
e
.
getMessage
(),
e
);
return
new
ResponseEntity
<
byte
[]>(
null
,
null
,
HttpStatus
.
BAD_REQUEST
);
}
finally
{
if
(
workbook
!=
null
)
{
try
{
workbook
.
close
();
}
catch
(
IOException
e
)
{
logger
.
error
(
e
.
getMessage
(),
e
);
}
}
}
HttpHeaders
headers
=
new
HttpHeaders
();
headers
.
setContentType
(
MediaType
.
parseMediaType
(
"application/vnd.ms-excel"
));
return
new
ResponseEntity
<
byte
[]>(
contentReturn
,
headers
,
HttpStatus
.
OK
);
}
@RequestMapping
(
value
=
"/changeCampaignStatus"
,
method
=
RequestMethod
.
POST
)
public
ResultDTO
changeCampaignStatus
(
@RequestBody
CampaignDTO
dto
,
HttpServletRequest
request
)
{
dto
.
setSessionId
(
request
.
getSession
().
getId
());
...
...
@@ -248,13 +166,6 @@ public class CampaignController {
return
new
ResponseEntity
<>(
resultDTO
,
HttpStatus
.
OK
);
}
@GetMapping
(
"/countRecallCustomer"
)
@ResponseBody
public
ResponseEntity
countRecallCustomer
(
@RequestParam
(
"companySiteId"
)
Long
companySiteId
,
@RequestParam
(
"agentId"
)
Long
agentId
)
{
ResultDTO
result
=
campaignExecuteService
.
countRecallCustomer
(
companySiteId
,
agentId
);
return
new
ResponseEntity
<>(
result
,
HttpStatus
.
OK
);
}
@GetMapping
(
"/getCustomerRecall"
)
@ResponseBody
public
ResponseEntity
getCustomerRecall
(
@RequestParam
(
"campaignId"
)
Long
campaignId
,
@RequestParam
(
"customerId"
)
Long
customerId
)
{
...
...
@@ -340,4 +251,32 @@ public class CampaignController {
return
new
ResponseEntity
<>(
result
,
HttpStatus
.
OK
);
}
@RequestMapping
(
value
=
"/import-file"
,
method
=
RequestMethod
.
POST
)
public
ResponseEntity
<?>
importFile
(
@RequestParam
(
"file"
)
MultipartFile
file
,
@RequestHeader
(
"X-Auth-Token"
)
String
authToken
)
{
Locale
locale
=
new
Locale
(
"vi"
,
"VN"
);
try
{
UserSession
userSession
=
(
UserSession
)
RedisUtil
.
getInstance
().
get
(
authToken
);
if
(
file
.
isEmpty
())
{
return
new
ResponseEntity
<>(
BundleUtils
.
getLangString
(
"common.fileNotSelected"
),
HttpStatus
.
OK
);
}
if
(!
Objects
.
equals
(
FilenameUtils
.
getExtension
(
file
.
getOriginalFilename
()),
Constants
.
FileType
.
xlsx
))
{
return
new
ResponseEntity
<>(
BundleUtils
.
getLangString
(
"common.fileInvalidFormat"
,
locale
),
HttpStatus
.
OK
);
}
//String path = saveUploadFile(file);
// List<CustomizeFields> dynamicHeaders = customerService.getDynamicHeader(userSession.getCompanySiteId());
// Map<String, Object> map = customerService.readAndValidateCustomer(path, dynamicHeaders, userSession, customerListId);
// File fileExport = (File) map.get("file");
// String message = (String) map.get("message");
// return ResponseEntity.ok()
// .header("Content-Type", Constants.MIME_TYPE.EXCEL_XLSX)
// .header(HttpHeaders.CONTENT_DISPOSITION, "attachment; filename=template_import_customer.xlsx")
// .header("Message", message)
// .body(Files.readAllBytes(fileExport.toPath()));
return
new
ResponseEntity
<>(
null
,
HttpStatus
.
OK
);
}
catch
(
Exception
e
)
{
logger
.
error
(
e
.
getMessage
(),
e
);
return
new
ResponseEntity
<>(
HttpStatus
.
BAD_REQUEST
);
}
}
}
This diff is collapsed.
Click to expand it.
src/main/java/com/viettel/campaign/web/rest/CampaignExecuteController.java
0 → 100644
View file @
f6703e9b
package
com.viettel.campaign.web.rest
;
import
com.viettel.campaign.service.CampaignExecuteService
;
import
com.viettel.campaign.web.dto.CampaignCustomerDTO
;
import
com.viettel.campaign.web.dto.ReceiveCustLogDTO
;
import
com.viettel.campaign.web.dto.ResultDTO
;
import
com.viettel.campaign.web.dto.request_dto.CampaignRequestDTO
;
import
org.apache.poi.xssf.usermodel.XSSFWorkbook
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.http.HttpHeaders
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.http.MediaType
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.web.bind.annotation.*
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.ByteArrayOutputStream
;
import
java.io.IOException
;
import
java.io.OutputStream
;
@RestController
@RequestMapping
(
"/ipcc/campaign/execute"
)
@CrossOrigin
public
class
CampaignExecuteController
{
private
static
final
Logger
logger
=
LoggerFactory
.
getLogger
(
CampaignController
.
class
);
@Autowired
CampaignExecuteService
campaignExecuteService
;
@PostMapping
(
"/searchCampaignExecute"
)
@ResponseBody
public
ResponseEntity
<
ResultDTO
>
searchCampaignExecute
(
@RequestBody
CampaignRequestDTO
requestDto
,
HttpServletRequest
request
)
{
String
xAuthToken
=
request
.
getHeader
(
"X-Auth-Token"
);
ResultDTO
result
=
campaignExecuteService
.
searchCampaignExecute
(
requestDto
,
xAuthToken
);
return
new
ResponseEntity
<>(
result
,
HttpStatus
.
OK
);
}
@PostMapping
(
"/getExecuteCampaign"
)
@ResponseBody
public
ResponseEntity
<
ResultDTO
>
getExecuteCampaign
(
@RequestBody
CampaignRequestDTO
requestDto
)
{
ResultDTO
result
=
campaignExecuteService
.
getExecuteCampaign
(
requestDto
);
return
new
ResponseEntity
<>(
result
,
HttpStatus
.
OK
);
}
@PostMapping
(
"/getCustomer"
)
@ResponseBody
public
ResponseEntity
<
ResultDTO
>
getCustomer
(
@RequestBody
CampaignCustomerDTO
requestDto
)
{
ResultDTO
result
=
campaignExecuteService
.
getCustomer
(
requestDto
);
return
new
ResponseEntity
<>(
result
,
HttpStatus
.
OK
);
}
@PostMapping
(
"/getCustomerComplete"
)
@ResponseBody
public
ResponseEntity
<
ResultDTO
>
getCustomerComplete
(
@RequestBody
ReceiveCustLogDTO
requestDto
)
{
ResultDTO
result
=
campaignExecuteService
.
getCustomerComplete
(
requestDto
);
return
new
ResponseEntity
<>(
result
,
HttpStatus
.
OK
);
}
@PostMapping
(
"/getCallLog"
)
@ResponseBody
public
ResponseEntity
<
ResultDTO
>
getCallLog
(
@RequestBody
ReceiveCustLogDTO
requestDto
)
{
ResultDTO
result
=
campaignExecuteService
.
getCallLog
(
requestDto
);
return
new
ResponseEntity
<>(
result
,
HttpStatus
.
OK
);
}
@GetMapping
(
"/countRecallCustomer"
)
@ResponseBody
public
ResponseEntity
countRecallCustomer
(
@RequestParam
(
"companySiteId"
)
Long
companySiteId
,
@RequestParam
(
"agentId"
)
Long
agentId
)
{
ResultDTO
result
=
campaignExecuteService
.
countRecallCustomer
(
companySiteId
,
agentId
);
return
new
ResponseEntity
<>(
result
,
HttpStatus
.
OK
);
}
@PostMapping
(
"/getAgentLogout"
)
@ResponseBody
public
ResponseEntity
<
ResultDTO
>
getAgentLogout
(
@RequestBody
CampaignRequestDTO
requestDto
)
{
ResultDTO
result
=
campaignExecuteService
.
getAgentLogout
(
requestDto
);
return
new
ResponseEntity
<>(
result
,
HttpStatus
.
OK
);
}
@PostMapping
(
"/searchInteractiveResult"
)
@ResponseBody
public
ResponseEntity
<
ResultDTO
>
searchInteractiveResult
(
@RequestBody
CampaignRequestDTO
dto
)
throws
Exception
{
ResultDTO
result
=
campaignExecuteService
.
searchInteractiveResult
(
dto
);
return
new
ResponseEntity
<>(
result
,
HttpStatus
.
OK
);
}
@PostMapping
(
"/exportInteractiveResult"
)
@ResponseBody
public
ResponseEntity
<?>
exportInteractiveResult
(
HttpServletResponse
response
,
@RequestBody
CampaignRequestDTO
dto
)
{
XSSFWorkbook
workbook
=
null
;
byte
[]
contentReturn
=
null
;
try
{
String
fileName
=
"report_campaign_exec_interactive_result.xlsx"
;
response
.
setHeader
(
"Content-Disposition"
,
"attachment; filename="
+
fileName
);
OutputStream
outputStream
;
workbook
=
campaignExecuteService
.
exportInteractiveResult
(
dto
);
outputStream
=
response
.
getOutputStream
();
workbook
.
write
(
outputStream
);
ByteArrayOutputStream
byteArrayOutputStream
=
new
ByteArrayOutputStream
();
workbook
.
write
(
byteArrayOutputStream
);
contentReturn
=
byteArrayOutputStream
.
toByteArray
();
}
catch
(
Exception
e
)
{
logger
.
error
(
e
.
getMessage
(),
e
);
return
new
ResponseEntity
<
byte
[]>(
null
,
null
,
HttpStatus
.
BAD_REQUEST
);
}
finally
{
if
(
workbook
!=
null
)
{
try
{
workbook
.
close
();
}
catch
(
IOException
e
)
{
logger
.
error
(
e
.
getMessage
(),
e
);
}
}
}
HttpHeaders
headers
=
new
HttpHeaders
();
headers
.
setContentType
(
MediaType
.
parseMediaType
(
"application/vnd.ms-excel"
));
return
new
ResponseEntity
<
byte
[]>(
contentReturn
,
headers
,
HttpStatus
.
OK
);
}
@GetMapping
(
"/getCustomerInfor"
)
@ResponseBody
public
ResponseEntity
getCustomerInfor
(
@RequestParam
(
"companySiteId"
)
Long
companySiteId
,
@RequestParam
(
"customerId"
)
Long
customerId
,
@RequestParam
(
"campaignId"
)
Long
campaignId
)
{
ResultDTO
result
=
campaignExecuteService
.
getCustomerInfor
(
companySiteId
,
customerId
,
campaignId
);
return
new
ResponseEntity
<>(
result
,
HttpStatus
.
OK
);
}
}
This diff is collapsed.
Click to expand it.
src/main/java/com/viettel/campaign/web/rest/TicketController.java
View file @
f6703e9b
package
com.viettel.campaign.web.rest
;
import
com.viettel.campaign.service.TicketService
;
import
com.viettel.campaign.web.dto.ResultDTO
;
import
org.apache.log4j.Logger
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.http.HttpStatus
;
...
...
@@ -22,7 +23,7 @@ public class TicketController {
@GetMapping
(
"/getHistory"
)
@ResponseBody
public
ResponseEntity
searchCampaignExecute
(
@RequestParam
(
"page"
)
int
page
,
@RequestParam
(
"pageSize"
)
int
pageSize
,
@RequestParam
(
"sort"
)
String
sort
,
@RequestParam
(
"customerId"
)
String
customerId
)
{
Map
result
=
ticketService
.
getHistory
(
page
,
pageSize
,
sort
,
customerId
);
ResultDTO
result
=
ticketService
.
getHistory
(
page
,
pageSize
,
sort
,
customerId
);
return
new
ResponseEntity
<>(
result
,
HttpStatus
.
OK
);
}
}
This diff is collapsed.
Click to expand it.
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