diff --git a/dxhy-core/src/main/java/com/dxhy/core/controller/mailGather/EmailMaintainController.java b/dxhy-core/src/main/java/com/dxhy/core/controller/mailGather/EmailMaintainController.java index b2f4cf11..53dca740 100644 --- a/dxhy-core/src/main/java/com/dxhy/core/controller/mailGather/EmailMaintainController.java +++ b/dxhy-core/src/main/java/com/dxhy/core/controller/mailGather/EmailMaintainController.java @@ -4,7 +4,9 @@ import cn.hutool.core.codec.Base64; import cn.hutool.core.util.ObjectUtil; import com.alibaba.excel.EasyExcel; import com.alibaba.fastjson.JSONObject; +import com.dxhy.common.constant.DbConstant; import com.dxhy.common.controller.AbstractController; +import com.dxhy.common.datasource.config.DynamicContextHolder; import com.dxhy.common.util.UUIDUtils; import com.dxhy.common.utils.Base64Encoding; import com.dxhy.common.utils.R; @@ -91,6 +93,13 @@ public class EmailMaintainController extends AbstractController { } String loginname = getUserInfo().getLoginname(); emailMaintain.setCreateUser(loginname); + DynamicContextHolder.push(DbConstant.BASICS_READ); + EmailMaintainVo vo = new EmailMaintainVo(); + vo.setEmailAddress(emailMaintain.getEmailAddress()); + EmailMaintainVo maintainVo = emailMaintainService.getEmailMaintainVo(vo); + if(maintainVo != null){ + return ResponseEntity.ok(R.error("邮箱地址已存在!")); + } boolean insert = this.emailMaintainService.insert(emailMaintain); if(insert){ return ResponseEntity.ok(R.ok()); @@ -106,6 +115,16 @@ public class EmailMaintainController extends AbstractController { */ @PostMapping("/edit") public ResponseEntity edit(@RequestBody EmailMaintainVo emailMaintain) { + if(StringUtils.isBlank(emailMaintain.getEmailPassword())){ + return ResponseEntity.ok(R.error("邮箱地址不能为空!")); + } + DynamicContextHolder.push(DbConstant.BASICS_READ); + EmailMaintainVo vo = new EmailMaintainVo(); + vo.setEmailAddress(emailMaintain.getEmailAddress()); + EmailMaintainVo maintainVo = emailMaintainService.getEmailMaintainVo(vo); + if(maintainVo != null && maintainVo.getId().equals(emailMaintain.getId())){ + return ResponseEntity.ok(R.error("邮箱地址已存在!")); + } boolean b = emailMaintainService.update(emailMaintain); if(b){ return ResponseEntity.ok(R.ok()); @@ -142,6 +161,7 @@ public class EmailMaintainController extends AbstractController { errorMsgList.add("第" + resultIndex + "行,用户编码不能为空"); continue; } + DynamicContextHolder.push(DbConstant.BASICS_READ); String userName = emailMaintainService.getUserName(userId); if(StringUtils.isBlank(userName)){ errorMsgList.add("第" + resultIndex + "行,用户编码在系统中查询不到,请核实!"); diff --git a/dxhy-core/src/main/java/com/dxhy/core/controller/mailGather/MailGatherLogController.java b/dxhy-core/src/main/java/com/dxhy/core/controller/mailGather/MailGatherLogController.java index 6815c9d5..448522f5 100644 --- a/dxhy-core/src/main/java/com/dxhy/core/controller/mailGather/MailGatherLogController.java +++ b/dxhy-core/src/main/java/com/dxhy/core/controller/mailGather/MailGatherLogController.java @@ -1,8 +1,12 @@ package com.dxhy.core.controller.mailGather; +import com.dxhy.common.constant.DbConstant; import com.dxhy.common.controller.AbstractController; +import com.dxhy.common.datasource.config.DynamicContextHolder; import com.dxhy.common.utils.R; import com.dxhy.core.service.mailGather.MailGatherLogService; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; @@ -10,6 +14,9 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.Date; import java.util.Map; /** @@ -18,6 +25,7 @@ import java.util.Map; * @author makejava * @since 2023-03-23 08:42:35 */ +@Slf4j @RestController @RequestMapping("/mailGatherLog") public class MailGatherLogController extends AbstractController { @@ -26,6 +34,7 @@ public class MailGatherLogController extends AbstractController { */ @Resource private MailGatherLogService mailGatherLogService; + final SimpleDateFormat sf2 = new SimpleDateFormat("yyyy-MM-dd"); /** * 分页查询 @@ -46,6 +55,26 @@ public class MailGatherLogController extends AbstractController { if (pramsMap.get("parseEnd") == null || "".equals(pramsMap.get("parseEnd"))) { return ResponseEntity.ok(R.error("结束日期不能为空!")); } + Object parseStart = pramsMap.get("parseStart"); + Object parseEnd = pramsMap.get("parseEnd"); + if (parseEnd == null || parseEnd == null) { + + } else { + try { + Date starttime = sf2.parse(String.valueOf(parseStart)); + Date endtime = sf2.parse(String.valueOf(parseEnd)); + if (starttime.after(endtime)) { + return ResponseEntity.ok(R.error("开始时间不能大于结束时间")); + } + pramsMap.put("startTime", starttime); + pramsMap.put("endTime", endtime); + } catch (ParseException e) { + throw new RuntimeException(e); + } + } + String loginname = getUserInfo().getLoginname(); + pramsMap.put("createUser",loginname); + DynamicContextHolder.push(DbConstant.BASICS_READ); return ResponseEntity.ok(R.ok().put("data",this.mailGatherLogService.queryByPage(pramsMap))); } diff --git a/dxhy-core/src/main/java/com/dxhy/core/dao/mailGather/EmailMaintainDao.java b/dxhy-core/src/main/java/com/dxhy/core/dao/mailGather/EmailMaintainDao.java index 4cad42c4..67042ce5 100644 --- a/dxhy-core/src/main/java/com/dxhy/core/dao/mailGather/EmailMaintainDao.java +++ b/dxhy-core/src/main/java/com/dxhy/core/dao/mailGather/EmailMaintainDao.java @@ -35,7 +35,7 @@ public interface EmailMaintainDao extends BaseMapper { * @param emailMaintainVo 查询条件 * @return 总行数 */ - long count(EmailMaintainVo emailMaintainVo); + EmailMaintainVo getEmailMaintainVo(EmailMaintainVo emailMaintainVo); /** * 新增数据 diff --git a/dxhy-core/src/main/java/com/dxhy/core/job/service/impl/ConfirmServiceImpl.java b/dxhy-core/src/main/java/com/dxhy/core/job/service/impl/ConfirmServiceImpl.java index d7983001..8c0c8b3a 100644 --- a/dxhy-core/src/main/java/com/dxhy/core/job/service/impl/ConfirmServiceImpl.java +++ b/dxhy-core/src/main/java/com/dxhy/core/job/service/impl/ConfirmServiceImpl.java @@ -102,6 +102,9 @@ public class ConfirmServiceImpl extends ServiceImpl impl if (list != null && list.size() > 0) { for (TAcOrg tAcOrg : list) { + + DynamicContextHolder.push(DbConstant.BASICS_READ); + BasisSysDeptCfg baseSysDeptCfg = basisSysDeptCfgDao.selectOne(new QueryWrapper().eq("nsrsbh", tAcOrg.getTaxno())); if (baseSysDeptCfg != null) { continue; diff --git a/dxhy-core/src/main/java/com/dxhy/core/model/mailGather/MailGatherLogVo.java b/dxhy-core/src/main/java/com/dxhy/core/model/mailGather/MailGatherLogVo.java index 2e665fa2..5e8a9a96 100644 --- a/dxhy-core/src/main/java/com/dxhy/core/model/mailGather/MailGatherLogVo.java +++ b/dxhy-core/src/main/java/com/dxhy/core/model/mailGather/MailGatherLogVo.java @@ -26,4 +26,17 @@ public class MailGatherLogVo extends CommonDTO { private String fileName; private Date createTime; + + public String deptId; + + private String companyCode; + + public String deptName; + + public String username; + + public String userId; + + public String createUser; + } diff --git a/dxhy-core/src/main/java/com/dxhy/core/service/mailGather/EmailMaintainService.java b/dxhy-core/src/main/java/com/dxhy/core/service/mailGather/EmailMaintainService.java index 99328e74..d855e687 100644 --- a/dxhy-core/src/main/java/com/dxhy/core/service/mailGather/EmailMaintainService.java +++ b/dxhy-core/src/main/java/com/dxhy/core/service/mailGather/EmailMaintainService.java @@ -51,4 +51,6 @@ public interface EmailMaintainService { String getUserName(String userCode); int insertBatch(List entities); + + EmailMaintainVo getEmailMaintainVo(EmailMaintainVo emailMaintain); } diff --git a/dxhy-core/src/main/java/com/dxhy/core/service/mailGather/impl/EmailMaintainServiceImpl.java b/dxhy-core/src/main/java/com/dxhy/core/service/mailGather/impl/EmailMaintainServiceImpl.java index 892b849f..338a5daa 100644 --- a/dxhy-core/src/main/java/com/dxhy/core/service/mailGather/impl/EmailMaintainServiceImpl.java +++ b/dxhy-core/src/main/java/com/dxhy/core/service/mailGather/impl/EmailMaintainServiceImpl.java @@ -70,6 +70,7 @@ public class EmailMaintainServiceImpl implements EmailMaintainService { */ @Override public boolean insert(EmailMaintainVo emailMaintain) { + DynamicContextHolder.push(DbConstant.BASICS_READ); if(StringUtils.isEmpty(emailMaintain.getId())){ emailMaintain.setId(IdUtil.nanoId()); } @@ -116,6 +117,11 @@ public class EmailMaintainServiceImpl implements EmailMaintainService { return emailMaintainDao.insertBatch(entities); } + @Override + public EmailMaintainVo getEmailMaintainVo(EmailMaintainVo emailMaintain) { + return emailMaintainDao.getEmailMaintainVo(emailMaintain); + } + //根据用户名进行查询 public void getdeptInfo(String deptId){ DynamicContextHolder.push(DbConstant.BASICS_READ); diff --git a/dxhy-core/src/main/java/com/dxhy/core/service/mailGather/impl/MailGatherLogServiceImpl.java b/dxhy-core/src/main/java/com/dxhy/core/service/mailGather/impl/MailGatherLogServiceImpl.java index 83ebd997..12e63f4f 100644 --- a/dxhy-core/src/main/java/com/dxhy/core/service/mailGather/impl/MailGatherLogServiceImpl.java +++ b/dxhy-core/src/main/java/com/dxhy/core/service/mailGather/impl/MailGatherLogServiceImpl.java @@ -5,16 +5,19 @@ import cn.hutool.core.codec.Base64; import com.alibaba.fastjson.JSONObject; import com.dxhy.common.constant.DbConstant; import com.dxhy.common.datasource.config.DynamicContextHolder; +import com.dxhy.common.util.UUIDUtils; import com.dxhy.core.dao.mailGather.MailGatherLogDao; import com.dxhy.core.model.mailGather.MailGatherLogVo; import com.dxhy.core.service.mailGather.MailGatherLogService; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.ArrayList; +import java.util.Date; import java.util.List; import java.util.Map; @@ -70,6 +73,10 @@ public class MailGatherLogServiceImpl implements MailGatherLogService { */ @Override public MailGatherLogVo insert(MailGatherLogVo mailGatherLog) { + if(StringUtils.isEmpty(mailGatherLog.getId())){ + mailGatherLog.setId(UUIDUtils.generateShortUuid()); + } + mailGatherLog.setCreateTime(new Date()); this.mailGatherLogDao.insert(mailGatherLog); return mailGatherLog; } diff --git a/dxhy-core/src/main/java/com/dxhy/core/task/SnEmailGatherTask.java b/dxhy-core/src/main/java/com/dxhy/core/task/SnEmailGatherTask.java index 0e009d08..a166c837 100644 --- a/dxhy-core/src/main/java/com/dxhy/core/task/SnEmailGatherTask.java +++ b/dxhy-core/src/main/java/com/dxhy/core/task/SnEmailGatherTask.java @@ -8,6 +8,7 @@ import com.alibaba.fastjson.JSONObject; import com.dxhy.common.constant.DbConstant; import com.dxhy.common.datasource.config.DynamicContextHolder; import com.dxhy.common.util.MD5; +import com.dxhy.common.util.UUIDUtils; import com.dxhy.core.job.entity.ScheduleJobEntity; import com.dxhy.core.job.service.ScheduleJobService; import com.dxhy.core.model.mailGather.EmailMaintainVo; @@ -98,10 +99,9 @@ public class SnEmailGatherTask { Store store = mailAuth(emailName, password); if(store == null){ MailGatherLogVo gatherLogVo = new MailGatherLogVo(); - gatherLogVo.setId(IdUtil.nanoId()); + gatherLogVo.setId(UUIDUtils.generateShortUuid()); gatherLogVo.setErrorMsg("邮箱认证失败"); gatherLogVo.setOcrType("1"); - gatherLogVo.setCreateTime(new Date()); gatherLogVo.setFromAddress(emailName); mailGatherLogService.insert(gatherLogVo); return; diff --git a/dxhy-core/src/main/java/com/dxhy/core/task/SnEmailGatherTaskTest.java b/dxhy-core/src/main/java/com/dxhy/core/task/SnEmailGatherTaskTest.java index f18287d5..20c937e1 100644 --- a/dxhy-core/src/main/java/com/dxhy/core/task/SnEmailGatherTaskTest.java +++ b/dxhy-core/src/main/java/com/dxhy/core/task/SnEmailGatherTaskTest.java @@ -37,8 +37,10 @@ class SnEmailGatherTaskTest { String port = "110"; //邮件接收服务器地址 String mail_host = "mail.pop3.host"; - String emailName = "15201210373@163.com"; - String password = "JKZATQTPHDDQTQSH"; + String emailName = "1149953701@qq.com"; + String password = "pmdzleyabmlzgdhc"; +// String emailName = "15201210373@163.com"; +// String password = "JKZATQTPHDDQTQSH"; String mailSuffix = emailName.split("@")[1]; //邮箱类型 String mailType = mailSuffix.split("\\.")[0]; @@ -61,7 +63,7 @@ class SnEmailGatherTaskTest { //连接邮箱服务器 //获取当前时间 Date currentTime = new Date(); - // 获得收件箱 pop3协议只有一个有效的文件夹就是INBOX + // 品 ping获得收件箱 pop3协议只有一个有效的文件夹就是INBOX Folder folder = store.getFolder("INBOX"); //获取邮件列表 folder.open(Folder.READ_WRITE); @@ -113,6 +115,7 @@ class SnEmailGatherTaskTest { Map resultMap = JSONObject.parseObject(body, Map.class); Object status = resultMap.get("status"); + System.out.println(JSONObject.toJSONString("================="+resultMap)); if(status != null && "200".equals(String.valueOf(status))){ } @@ -165,7 +168,7 @@ class SnEmailGatherTaskTest { OpenServiceOcr openServiceOcr = openServiceOcrs.get(i); OpenServiceOcr.InvoiceOcrData invoiceOcrData = openServiceOcr.getData(); OcrResultToyxVo resultToyxVo = new OcrResultToyxVo(); - resultToyxVo.setCompanyId(""); + resultToyxVo.setCompanyId("c040"); resultToyxVo.setSource("01"); resultToyxVo.setInvoiceCode(invoiceOcrData.getFPDM()); resultToyxVo.setInvoiceNumber(invoiceOcrData.getFPHM()); @@ -176,7 +179,7 @@ class SnEmailGatherTaskTest { resultToyxVo.setFileType("102"); resultToyxVo.setFileByte(map.get("pdfStream")); resultToyxVo.setEmail(map.get("emailName")); - resultToyxVo.setEmployeeId(""); + resultToyxVo.setEmployeeId("01142085"); resultToyxVoList.add(resultToyxVo); } diff --git a/dxhy-core/src/main/resources/mapper/mailGather/EmailMaintainMapper.xml b/dxhy-core/src/main/resources/mapper/mailGather/EmailMaintainMapper.xml index d1ae63c0..9d3d1a52 100644 --- a/dxhy-core/src/main/resources/mapper/mailGather/EmailMaintainMapper.xml +++ b/dxhy-core/src/main/resources/mapper/mailGather/EmailMaintainMapper.xml @@ -48,7 +48,7 @@ - select count(1) from email_maintain diff --git a/dxhy-core/src/main/resources/mapper/mailGather/MailGatherLogMapper.xml b/dxhy-core/src/main/resources/mapper/mailGather/MailGatherLogMapper.xml index 734cbac5..16ebd4b3 100644 --- a/dxhy-core/src/main/resources/mapper/mailGather/MailGatherLogMapper.xml +++ b/dxhy-core/src/main/resources/mapper/mailGather/MailGatherLogMapper.xml @@ -28,42 +28,32 @@