Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
E
email
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
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
陈天仲
email
Commits
558de846
Commit
558de846
authored
Mar 20, 2023
by
chentianzhong
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
7777777
parent
4716e1c0
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
83 additions
and
5 deletions
+83
-5
src/main/java/com/zq/email/EmailApplication.java
+2
-0
src/main/java/com/zq/email/config/MyThreadPoolTaskExecutor.java
+49
-0
src/main/java/com/zq/email/controller/EmailController.java
+15
-4
src/main/java/com/zq/email/controller/EmailPersonController.java
+5
-1
src/main/java/com/zq/email/service/IEmailPersonService.java
+5
-0
src/main/java/com/zq/email/service/impl/EmailPersonServiceImpl.java
+0
-0
src/main/java/com/zq/email/vo/EmailFolderMoveVo.java
+4
-0
src/main/java/com/zq/email/vo/EmailReadVo.java
+3
-0
No files found.
src/main/java/com/zq/email/EmailApplication.java
View file @
558de846
...
@@ -4,12 +4,14 @@ import org.mybatis.spring.annotation.MapperScan;
...
@@ -4,12 +4,14 @@ import org.mybatis.spring.annotation.MapperScan;
import
org.springframework.boot.SpringApplication
;
import
org.springframework.boot.SpringApplication
;
import
org.springframework.boot.autoconfigure.SpringBootApplication
;
import
org.springframework.boot.autoconfigure.SpringBootApplication
;
import
org.springframework.cloud.openfeign.EnableFeignClients
;
import
org.springframework.cloud.openfeign.EnableFeignClients
;
import
org.springframework.scheduling.annotation.EnableAsync
;
import
org.springframework.transaction.annotation.EnableTransactionManagement
;
import
org.springframework.transaction.annotation.EnableTransactionManagement
;
@EnableFeignClients
@EnableFeignClients
@SpringBootApplication
(
scanBasePackages
=
{
"com.zq.email"
,
"com.zq.common.config"
})
@SpringBootApplication
(
scanBasePackages
=
{
"com.zq.email"
,
"com.zq.common.config"
})
@MapperScan
(
"com.zq.email.mapper"
)
@MapperScan
(
"com.zq.email.mapper"
)
@EnableTransactionManagement
@EnableTransactionManagement
@EnableAsync
public
class
EmailApplication
{
public
class
EmailApplication
{
public
static
void
main
(
String
[]
args
)
{
public
static
void
main
(
String
[]
args
)
{
...
...
src/main/java/com/zq/email/config/MyThreadPoolTaskExecutor.java
0 → 100644
View file @
558de846
package
com
.
zq
.
email
.
config
;
import
org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor
;
import
org.springframework.web.context.request.RequestAttributes
;
import
org.springframework.web.context.request.RequestContextHolder
;
import
java.util.concurrent.Callable
;
import
java.util.concurrent.Future
;
/**
* 解决异步丢失请求信息
*
* @author wilmiam
* @since 2022/12/10 16:23
*/
public
class
MyThreadPoolTaskExecutor
extends
ThreadPoolTaskExecutor
{
public
MyThreadPoolTaskExecutor
()
{
super
();
}
@Override
public
void
execute
(
Runnable
task
)
{
RequestAttributes
requestAttributes
=
RequestContextHolder
.
getRequestAttributes
();
super
.
execute
(()
->
{
RequestContextHolder
.
setRequestAttributes
(
requestAttributes
);
task
.
run
();
});
}
@Override
public
<
T
>
Future
<
T
>
submit
(
Callable
<
T
>
task
)
{
RequestAttributes
requestAttributes
=
RequestContextHolder
.
getRequestAttributes
();
return
super
.
submit
(()
->
{
RequestContextHolder
.
setRequestAttributes
(
requestAttributes
);
return
task
.
call
();
});
}
@Override
public
Future
<?>
submit
(
Runnable
task
)
{
RequestAttributes
requestAttributes
=
RequestContextHolder
.
getRequestAttributes
();
return
super
.
submit
(()
->
{
RequestContextHolder
.
setRequestAttributes
(
requestAttributes
);
task
.
run
();
});
}
}
src/main/java/com/zq/email/controller/EmailController.java
View file @
558de846
...
@@ -101,12 +101,12 @@ public class EmailController {
...
@@ -101,12 +101,12 @@ public class EmailController {
public
ResultVo
detail
(
@RequestBody
EmailDetailVo
vo
)
{
public
ResultVo
detail
(
@RequestBody
EmailDetailVo
vo
)
{
OnlineUserDto
adminContext
=
TokenUtils
.
getAdminContext
();
OnlineUserDto
adminContext
=
TokenUtils
.
getAdminContext
();
AssertUtils
.
notNull
(
adminContext
,
"登录已失效,请重新登录后再次尝试!"
);
AssertUtils
.
notNull
(
adminContext
,
"登录已失效,请重新登录后再次尝试!"
);
AssertUtils
.
notNull
(
vo
.
getPersonId
(),
"缺少参数:personId"
);
AssertUtils
.
notNull
(
vo
.
getContentId
(),
"缺少参数:contentId"
);
EmailPerson
emailPerson
=
emailPersonService
.
getById
(
vo
.
getPersonId
());
EmailContent
content
=
emailContentService
.
getById
(
vo
.
getContentId
());
AssertUtils
.
notNull
(
content
,
"获取邮件内容失败"
);
EmailPerson
emailPerson
=
emailPersonService
.
getByIdAndSendTime
(
vo
.
getPersonId
(),
content
.
getSendTime
());
AssertUtils
.
notNull
(
emailPerson
,
"获取邮件对应人员信息失败"
);
AssertUtils
.
notNull
(
emailPerson
,
"获取邮件对应人员信息失败"
);
AssertUtils
.
isTrue
(
emailPerson
.
getUserId
().
equals
(
adminContext
.
getUserId
())
,
"非本人邮件,不允许阅读"
);
AssertUtils
.
isTrue
(
emailPerson
.
getUserId
().
equals
(
adminContext
.
getUserId
())
,
"非本人邮件,不允许阅读"
);
EmailContent
content
=
emailContentService
.
getById
(
emailPerson
.
getEmailContentId
());
AssertUtils
.
notNull
(
content
,
"获取邮件内容失败"
);
emailPerson
.
setEmailContent
(
content
);
emailPerson
.
setEmailContent
(
content
);
return
ResultVo
.
success
(
emailPerson
);
return
ResultVo
.
success
(
emailPerson
);
}
}
...
@@ -208,6 +208,17 @@ public class EmailController {
...
@@ -208,6 +208,17 @@ public class EmailController {
@ApiOperation
(
"移动邮件到自定义文件夹或回收站"
)
@PostMapping
(
"detail/move"
)
public
ResultVo
edit
(
@RequestBody
EmailDetailVo
vo
)
{
AssertUtils
.
notNull
(
vo
.
getContentId
(),
"缺少参数:contentId"
);
AssertUtils
.
notNull
(
vo
.
getPersonId
(),
"缺少参数:personId"
);
emailPersonService
.
moveDetailEmailFolder
(
vo
);
return
ResultVo
.
success
();
}
...
...
src/main/java/com/zq/email/controller/EmailPersonController.java
View file @
558de846
...
@@ -40,6 +40,9 @@ public class EmailPersonController {
...
@@ -40,6 +40,9 @@ public class EmailPersonController {
@ApiOperation
(
"移动邮件到自定义文件夹或回收站"
)
@ApiOperation
(
"移动邮件到自定义文件夹或回收站"
)
@PostMapping
(
"move"
)
@PostMapping
(
"move"
)
public
ResultVo
edit
(
@RequestBody
EmailFolderMoveVo
vo
)
{
public
ResultVo
edit
(
@RequestBody
EmailFolderMoveVo
vo
)
{
AssertUtils
.
notEmpty
(
vo
.
getPersonIdList
(),
"缺少参数:personIdList"
);
AssertUtils
.
notNull
(
vo
.
getSearchRange
(),
"缺少参数:searchRange"
);
AssertUtils
.
notNull
(
vo
.
getFolderId
(),
"缺少参数:folderId"
);
emailPersonService
.
moveEmailFolder
(
vo
);
emailPersonService
.
moveEmailFolder
(
vo
);
return
ResultVo
.
success
();
return
ResultVo
.
success
();
}
}
...
@@ -63,6 +66,7 @@ public class EmailPersonController {
...
@@ -63,6 +66,7 @@ public class EmailPersonController {
public
ResultVo
readEmail
(
@RequestBody
EmailReadVo
vo
)
{
public
ResultVo
readEmail
(
@RequestBody
EmailReadVo
vo
)
{
AssertUtils
.
notEmpty
(
vo
.
getPersonIdList
(),
"缺少参数:personIdList"
);
AssertUtils
.
notEmpty
(
vo
.
getPersonIdList
(),
"缺少参数:personIdList"
);
AssertUtils
.
notNull
(
vo
.
getIsRead
(),
"缺少参数:isSend"
);
AssertUtils
.
notNull
(
vo
.
getIsRead
(),
"缺少参数:isSend"
);
AssertUtils
.
notNull
(
vo
.
getSearchRange
(),
"缺少参数:searchRange"
);
log
.
info
(
"执行前: {}"
+
DateUtil
.
format
(
new
Date
(),
"yyyy-MM-dd HH:mm:ss"
));
log
.
info
(
"执行前: {}"
+
DateUtil
.
format
(
new
Date
(),
"yyyy-MM-dd HH:mm:ss"
));
this
.
emailPersonService
.
readEmail
(
vo
);
this
.
emailPersonService
.
readEmail
(
vo
);
log
.
info
(
"执行后: {}"
+
DateUtil
.
format
(
new
Date
(),
"yyyy-MM-dd HH:mm:ss"
));
log
.
info
(
"执行后: {}"
+
DateUtil
.
format
(
new
Date
(),
"yyyy-MM-dd HH:mm:ss"
));
...
@@ -101,7 +105,7 @@ public class EmailPersonController {
...
@@ -101,7 +105,7 @@ public class EmailPersonController {
}
}
@ApiOperation
(
"回收站恢复"
)
@ApiOperation
(
"回收站恢复
(列表)
"
)
@PostMapping
(
"resumeEmail"
)
@PostMapping
(
"resumeEmail"
)
public
ResultVo
resumeEmail
(
@RequestBody
List
<
Long
>
personIdList
)
{
public
ResultVo
resumeEmail
(
@RequestBody
List
<
Long
>
personIdList
)
{
this
.
emailPersonService
.
resumeEmail
(
personIdList
);
this
.
emailPersonService
.
resumeEmail
(
personIdList
);
...
...
src/main/java/com/zq/email/service/IEmailPersonService.java
View file @
558de846
...
@@ -13,6 +13,7 @@ import org.springframework.core.io.InputStreamResource;
...
@@ -13,6 +13,7 @@ import org.springframework.core.io.InputStreamResource;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.http.ResponseEntity
;
import
javax.mail.internet.MimeMessage
;
import
javax.mail.internet.MimeMessage
;
import
java.time.LocalDateTime
;
import
java.util.List
;
import
java.util.List
;
/**
/**
...
@@ -66,4 +67,8 @@ public interface IEmailPersonService extends IService<EmailPerson> {
...
@@ -66,4 +67,8 @@ public interface IEmailPersonService extends IService<EmailPerson> {
ResultVo
getUserPolice
();
ResultVo
getUserPolice
();
List
<
CustomerUserVo
>
recentlyContacts
(
List
<
Long
>
recentlySendEmail
);
List
<
CustomerUserVo
>
recentlyContacts
(
List
<
Long
>
recentlySendEmail
);
EmailPerson
getByIdAndSendTime
(
Long
personId
,
LocalDateTime
sendTime
);
void
moveDetailEmailFolder
(
EmailDetailVo
vo
);
}
}
src/main/java/com/zq/email/service/impl/EmailPersonServiceImpl.java
View file @
558de846
This diff is collapsed.
Click to expand it.
src/main/java/com/zq/email/vo/EmailFolderMoveVo.java
View file @
558de846
package
com
.
zq
.
email
.
vo
;
package
com
.
zq
.
email
.
vo
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.Data
;
import
java.util.List
;
import
java.util.List
;
...
@@ -18,5 +19,8 @@ public class EmailFolderMoveVo {
...
@@ -18,5 +19,8 @@ public class EmailFolderMoveVo {
private
List
<
Long
>
personIdList
;
private
List
<
Long
>
personIdList
;
@ApiModelProperty
(
"查询范围,默认最近三个月"
)
private
Integer
searchRange
;
}
}
src/main/java/com/zq/email/vo/EmailReadVo.java
View file @
558de846
...
@@ -13,6 +13,9 @@ public class EmailReadVo {
...
@@ -13,6 +13,9 @@ public class EmailReadVo {
@ApiModelProperty
(
"personId集合"
)
@ApiModelProperty
(
"personId集合"
)
private
List
<
Long
>
personIdList
;
private
List
<
Long
>
personIdList
;
@ApiModelProperty
(
"查询范围,默认最近三个月"
)
private
Integer
searchRange
;
@ApiModelProperty
(
"0:未读 1:已读"
)
@ApiModelProperty
(
"0:未读 1:已读"
)
private
Integer
isRead
;
private
Integer
isRead
;
...
...
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