Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
H
haoban-manage3.0
Overview
Overview
Details
Activity
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
haoban3.0
haoban-manage3.0
Commits
af39cd79
Commit
af39cd79
authored
Dec 10, 2022
by
徐高华
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
下载
parent
47b4d838
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
124 additions
and
8 deletions
+124
-8
GroupChatHmController.java
...ban/manage/web/controller/chat/GroupChatHmController.java
+122
-1
GroupChatPlanController.java
...n/manage/web/controller/chat/GroupChatPlanController.java
+2
-7
No files found.
haoban-manage3-web/src/main/java/com/gic/haoban/manage/web/controller/chat/GroupChatHmController.java
View file @
af39cd79
package
com
.
gic
.
haoban
.
manage
.
web
.
controller
.
chat
;
import
java.io.File
;
import
java.io.FileOutputStream
;
import
java.io.IOException
;
import
java.io.InputStream
;
import
java.net.HttpURLConnection
;
import
java.net.MalformedURLException
;
import
java.net.URL
;
import
java.text.SimpleDateFormat
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.zip.ZipEntry
;
import
java.util.zip.ZipOutputStream
;
import
org.apache.commons.io.IOUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
com.gic.api.base.commons.BasePageInfo
;
import
com.gic.api.base.commons.JSONResponse
;
import
com.gic.api.base.commons.Page
;
import
com.gic.api.base.commons.ServiceResponse
;
import
com.gic.clerk.api.dto.AuthorizedUser
;
import
com.gic.commons.util.PageHelperUtils
;
import
com.gic.commons.util.ToolUtil
;
import
com.gic.commons.web.RequestThreadLocal
;
import
com.gic.commons.webapi.reponse.RestResponse
;
import
com.gic.enterprise.api.dto.security.DownloadReportDTO
;
import
com.gic.enterprise.api.service.DownloadReportService
;
import
com.gic.haoban.base.api.common.pojo.dto.WebLoginDTO
;
import
com.gic.haoban.common.utils.AuthWebRequestUtil
;
import
com.gic.haoban.manage.api.dto.chat.GroupChatDTO
;
...
...
@@ -21,6 +42,11 @@ import com.gic.haoban.manage.api.dto.qdto.hm.HmLinkChatQDTO;
import
com.gic.haoban.manage.api.service.chat.GroupChatApiService
;
import
com.gic.haoban.manage.api.service.chat.GroupChatHmApiService
;
import
com.gic.haoban.manage.web.vo.chat.HmLinkChatListVO
;
import
com.gic.qcloud.BucketNameEnum
;
import
com.gic.qcloud.FileUploadUtil
;
import
com.gic.web.common.utils.DataPermissionExport
;
import
com.gic.web.common.utils.ExecutorPoolSingleton
;
import
com.gic.web.common.utils.SessionContextUtils
;
/**
*
...
...
@@ -38,6 +64,8 @@ public class GroupChatHmController {
private
GroupChatHmApiService
groupChatHmApiService
;
@Autowired
private
GroupChatApiService
groupChatApiService
;
@Autowired
private
DownloadReportService
downloadReportService
;
@RequestMapping
(
"add"
)
public
RestResponse
<
Object
>
save
(
@RequestBody
GroupChatHmDTO
dto
)
{
...
...
@@ -84,7 +112,7 @@ public class GroupChatHmController {
GroupChatHmDTO
hm
=
linkResp
.
getResult
();
return
RestResponse
.
successResult
(
hm
);
}
@RequestMapping
(
"discard"
)
public
RestResponse
<
Object
>
discard
(
Long
chatHmId
)
{
WebLoginDTO
loginUser
=
AuthWebRequestUtil
.
getLoginUser
();
...
...
@@ -147,4 +175,97 @@ public class GroupChatHmController {
return
RestResponse
.
successResult
(
page
.
getResult
());
}
@RequestMapping
(
"download"
)
public
RestResponse
<
Object
>
download
(
List
<
Long
>
chatHmIdList
)
{
SimpleDateFormat
sdf
=
new
SimpleDateFormat
(
"yyyyMMddHHmmss"
);
String
qrCodeName
=
"群活码"
;
final
String
fileName
=
qrCodeName
+
"_"
+
sdf
.
format
(
new
Date
())
+
".zip"
;
final
AuthorizedUser
au
=
SessionContextUtils
.
getLoginUser
();
String
path
=
RequestThreadLocal
.
get
().
getSession
().
getServletContext
().
getRealPath
(
"/chat/qrcode/"
);
String
uuId
=
ToolUtil
.
randomUUID
();
path
=
path
+
uuId
;
final
String
tempPath
=
path
+
File
.
separator
+
fileName
;
File
file
=
new
File
(
tempPath
);
if
(!
file
.
exists
())
{
file
.
getParentFile
().
mkdirs
();
try
{
file
.
createNewFile
();
}
catch
(
IOException
e
)
{
}
}
WebLoginDTO
loginUser
=
AuthWebRequestUtil
.
getLoginUser
();
String
wxEnterpriseId
=
loginUser
.
getWxEnterpriseId
();
String
enterpriseId
=
loginUser
.
getEnterpriseId
();
BasePageInfo
basePageInfo
=
new
BasePageInfo
();
basePageInfo
.
setPageNum
(
1
);
basePageInfo
.
setPageSize
(
1000
);
ChatHmSearchQDTO
qdto
=
new
ChatHmSearchQDTO
();
qdto
.
setEnterpriseId
(
enterpriseId
);
qdto
.
setWxEnterpriseId
(
wxEnterpriseId
);
ServiceResponse
<
Page
<
GroupChatHmDTO
>>
resp
=
this
.
groupChatHmApiService
.
listPage
(
qdto
,
basePageInfo
);
List
<
GroupChatHmDTO
>
dtoList
=
resp
.
getResult
().
getResult
();
int
size
=
dtoList
.
size
();
JSONResponse
jsonResponse
=
DataPermissionExport
.
generatedExcel
(
1
,
au
,
""
,
""
,
size
,
fileName
,
qrCodeName
,
downloadReportService
);
final
String
reportId
;
if
(
jsonResponse
.
isSuccess
())
{
reportId
=
(
String
)
jsonResponse
.
getResult
();
}
else
{
return
RestResponse
.
failure
(
"1"
,
jsonResponse
.
getMessage
());
}
ExecutorPoolSingleton
.
getInstance
().
executeTask
(
new
Runnable
()
{
@Override
public
void
run
()
{
try
{
File
tempFile
=
new
File
(
tempPath
);
ZipOutputStream
out
=
new
ZipOutputStream
(
new
FileOutputStream
(
tempFile
));
for
(
GroupChatHmDTO
dto
:
dtoList
)
{
String
qrCodeUrl
=
dto
.
getWxQrCode
();
if
(
StringUtils
.
isNotBlank
(
qrCodeUrl
))
{
try
{
ZipEntry
e
=
new
ZipEntry
(
dto
.
getChatHmCode
()
+
"_"
+
dto
.
getName
()
+
".png"
);
out
.
putNextEntry
(
e
);
out
.
write
(
getStoreQrCode
(
qrCodeUrl
));
out
.
flush
();
}
catch
(
IOException
e
)
{
}
}
}
try
{
out
.
flush
();
out
.
closeEntry
();
out
.
close
();
}
catch
(
IOException
e
)
{
}
String
url
=
FileUploadUtil
.
simpleUploadFileFromLocal
(
tempFile
,
fileName
,
BucketNameEnum
.
COMPRESS_60000
.
getName
());
DownloadReportDTO
downloadReportDTO
=
new
DownloadReportDTO
();
downloadReportDTO
.
setDownloadUrl
(
"https://"
+
url
);
downloadReportService
.
updateDownloadReport
(
reportId
,
downloadReportDTO
);
tempFile
.
deleteOnExit
();
}
catch
(
Exception
e
)
{
}
}
});
return
RestResponse
.
successResult
(
reportId
);
}
private
byte
[]
getStoreQrCode
(
String
qrCodeUrl
)
{
HttpURLConnection
conn
=
null
;
try
{
URL
url
=
new
URL
(
qrCodeUrl
);
try
{
conn
=
(
HttpURLConnection
)
url
.
openConnection
();
conn
.
setRequestMethod
(
"GET"
);
InputStream
in
=
conn
.
getInputStream
();
return
IOUtils
.
toByteArray
(
in
);
}
catch
(
IOException
e
)
{
return
null
;
}
}
catch
(
MalformedURLException
e
)
{
return
null
;
}
}
}
haoban-manage3-web/src/main/java/com/gic/haoban/manage/web/controller/chat/GroupChatPlanController.java
View file @
af39cd79
package
com
.
gic
.
haoban
.
manage
.
web
.
controller
.
chat
;
import
java.time.LocalDateTime
;
import
java.util.Date
;
import
org.apache.logging.log4j.LogManager
;
...
...
@@ -9,7 +8,6 @@ import org.springframework.web.bind.annotation.RequestBody;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
com.alibaba.fastjson.JSON
;
import
com.gic.api.base.commons.BasePageInfo
;
import
com.gic.api.base.commons.Page
;
import
com.gic.api.base.commons.ServiceResponse
;
...
...
@@ -21,7 +19,6 @@ import com.gic.haoban.manage.api.dto.chat.GroupChatPlanLogDTO;
import
com.gic.haoban.manage.api.dto.chat.GroupChatPlanOwnerLogDTO
;
import
com.gic.haoban.manage.api.dto.qdto.chat.GroupChatPlanSearchQDTO
;
import
com.gic.haoban.manage.api.service.chat.GroupChatPlanApiService
;
import
com.gic.haoban.manage.web.controller.hm.HmLinkController
;
/**
*
...
...
@@ -35,7 +32,7 @@ import com.gic.haoban.manage.web.controller.hm.HmLinkController;
@RequestMapping
(
"/chat/plan"
)
public
class
GroupChatPlanController
{
private
static
org
.
apache
.
logging
.
log4j
.
Logger
logger
=
LogManager
.
getLogger
(
HmLink
Controller
.
class
);
private
static
org
.
apache
.
logging
.
log4j
.
Logger
logger
=
LogManager
.
getLogger
(
GroupChatPlan
Controller
.
class
);
@Autowired
private
GroupChatPlanApiService
groupChatPlanApiService
;
...
...
@@ -84,9 +81,7 @@ public class GroupChatPlanController {
}
@RequestMapping
(
"page"
)
public
RestResponse
<
Object
>
page
(
GroupChatPlanSearchQDTO
qdto
,
BasePageInfo
basePageInfo
,
LocalDateTime
startDate
)
{
logger
.
info
(
"qdto={} , {} , {},{}"
,
JSON
.
toJSONString
(
qdto
)
,
startDate
,
qdto
.
getStartDate
());
public
RestResponse
<
Object
>
page
(
GroupChatPlanSearchQDTO
qdto
,
BasePageInfo
basePageInfo
)
{
WebLoginDTO
loginUser
=
AuthWebRequestUtil
.
getLoginUser
();
qdto
.
setWxEnterpriseId
(
loginUser
.
getWxEnterpriseId
());
qdto
.
setEnterpriseId
(
loginUser
.
getEnterpriseId
());
...
...
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