Browse Source

修复信件查询的信件分类查询

master
21819 2 years ago
parent
commit
468bd93e64
  1. 2
      mailbox-lan/src/main/java/com/biutag/lan/domain/bo/MailQuery.java
  2. 75
      mailbox-lan/src/main/java/com/biutag/lan/service/WorkService.java

2
mailbox-lan/src/main/java/com/biutag/lan/domain/bo/MailQuery.java

@ -30,6 +30,8 @@ public class MailQuery {
private String mailCategory;
private String mailState;
private String deptId;
private String threeDeptName;

75
mailbox-lan/src/main/java/com/biutag/lan/service/WorkService.java

@ -11,10 +11,7 @@ import com.biutag.core.AjaxResult;
import com.biutag.entity.system.Dept;
import com.biutag.enums.RoleEnum;
import com.biutag.lan.config.AdminThreadLocal;
import com.biutag.lan.domain.Mail;
import com.biutag.lan.domain.MailLabel;
import com.biutag.lan.domain.MailSource;
import com.biutag.lan.domain.Work;
import com.biutag.lan.domain.*;
import com.biutag.lan.domain.bo.MailQuery;
import com.biutag.lan.domain.vo.MailExcel;
import com.biutag.lan.domain.vo.QueryMailVo;
@ -22,6 +19,7 @@ import com.biutag.lan.domain.vo.WorkVo;
import com.biutag.lan.enums.WorkType;
import com.biutag.lan.flow.FlowNameEnum;
import com.biutag.lan.flow.FlowNodeEnum;
import com.biutag.lan.mapper.MailCategoryMapper;
import com.biutag.lan.mapper.MailLabelMapper;
import com.biutag.lan.mapper.MailMapper;
import com.biutag.lan.mapper.WorkMapper;
@ -49,6 +47,9 @@ public class WorkService extends ServiceImpl<WorkMapper, Work> {
@Resource
private MailLabelMapper mailLabelMapper;
@Resource
private MailCategoryMapper mailCategoryMapper;
@Resource
private WorkMapper workMapper;
@ -314,21 +315,10 @@ public class WorkService extends ServiceImpl<WorkMapper, Work> {
.le(StrUtil.isNotBlank(mailQuery.getMailTimeStartEnd()), "TO_CHAR(m.mail_time, 'YYYY-MM-DD')", mailQuery.getMailTimeStartEnd())
.eq(StrUtil.isNotBlank(mailQuery.getSource()), "m.source", mailQuery.getSource())
.eq(StrUtil.isNotBlank(mailQuery.getMailLevel()), "m.mail_level", mailQuery.getMailLevel())
.eq(StrUtil.isNotBlank(mailQuery.getMailCategory()), "m.mail_category", mailQuery.getMailCategory())
.eq(StrUtil.isNotBlank(mailQuery.getMailState()), "m.mail_state", mailQuery.getMailState())
.eq(StrUtil.isNotBlank(mailQuery.getFlowKey()), "m.flow_key", mailQuery.getFlowKey());
if (StrUtil.isNotBlank(mailQuery.getDeptId())) {
Dept dept = deptMapper.selectById(mailQuery.getDeptId());
switch (dept.getLevel()) {
case 1:
break;
case 2:
queryWrapper.eq("m.second_dept_id", dept.getId());
break;
case 3:
queryWrapper.eq("m.three_dept_id", dept.getId());
break;
}
}
mailCategorySearch(mailQuery, queryWrapper);
deptSearch(mailQuery, queryWrapper);
if (StrUtil.isNotBlank(mailQuery.getMailLabels())) {
List<String> labelIds = mailQuery.handleMailLabels();
for (String labelId : labelIds) {
@ -371,6 +361,39 @@ public class WorkService extends ServiceImpl<WorkMapper, Work> {
return result;
}
private void mailCategorySearch(MailQuery mailQuery, QueryWrapper<Mail> queryWrapper) {
if(StrUtil.isNotBlank(mailQuery.getMailCategory())){
MailCategory mailCategory = mailCategoryMapper.selectById(mailQuery.getMailCategory());
switch (mailCategory.getLevel()){
case 1:
queryWrapper.eq("m.mail_first_category", mailCategory.getName());
break;
case 2:
queryWrapper.eq("m.mail_second_category", mailCategory.getName());
break;
case 3:
queryWrapper.eq("m.mail_three_category", mailCategory.getName());
break;
}
}
}
private void deptSearch(MailQuery mailQuery, QueryWrapper<Mail> queryWrapper) {
if (StrUtil.isNotBlank(mailQuery.getDeptId())) {
Dept dept = deptMapper.selectById(mailQuery.getDeptId());
switch (dept.getLevel()) {
case 1:
break;
case 2:
queryWrapper.eq("m.second_dept_id", dept.getId());
break;
case 3:
queryWrapper.eq("m.three_dept_id", dept.getId());
break;
}
}
}
public void export(HttpServletResponse response, String ids) throws IOException {
List<String> data = JSON.parseArray(ids, String.class);
@ -389,24 +412,12 @@ public class WorkService extends ServiceImpl<WorkMapper, Work> {
.le(StrUtil.isNotBlank(mailQuery.getMailTimeStartEnd()), "TO_CHAR(m.mail_time, 'YYYY-MM-DD')", mailQuery.getMailTimeStartEnd())
.eq(StrUtil.isNotBlank(mailQuery.getSource()), "m.source", mailQuery.getSource())
.eq(StrUtil.isNotBlank(mailQuery.getMailLevel()), "m.mail_level", mailQuery.getMailLevel())
.eq(StrUtil.isNotBlank(mailQuery.getMailCategory()), "m.mail_category", mailQuery.getMailCategory())
// .eq(StrUtil.isNotBlank(todoQuery.getAppealState()), "m.appeal_state", todoQuery.getAppealState())
.eq("m.satisfaction_status", "不满意")
.or()
.eq("m.verify_feedback", "不满意");
if (StrUtil.isNotBlank(mailQuery.getDeptId())) {
Dept dept = deptMapper.selectById(mailQuery.getDeptId());
switch (dept.getLevel()) {
case 1:
break;
case 2:
queryWrapper.eq("m.second_dept_id", dept.getId());
break;
case 3:
queryWrapper.eq("m.three_dept_id", dept.getId());
break;
}
}
mailCategorySearch(mailQuery, queryWrapper);
deptSearch(mailQuery, queryWrapper);
roleCheck(queryWrapper);
if (StrUtil.isNotBlank(mailQuery.getContactField()) && StrUtil.isNotBlank(mailQuery.getContactFieldValue())) {
switch (mailQuery.getContactField()) {

Loading…
Cancel
Save