|
@@ -460,14 +460,13 @@ public class AgreementLogic {
|
|
|
|
|
|
@Async
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
- public void sendEmailSche() {
|
|
|
+ public void sendEmailScheTask2() {
|
|
|
|
|
|
|
|
|
Mailbox mailbox = mailboxService.getById("1");
|
|
|
|
|
|
//今天要发送的保单
|
|
|
- //Date startTime = DateUtil.beginOfDay(new Date());
|
|
|
-/* Date endTime = DateUtil.parseDateTime(DateUtils.formatDate(new Date(),"yyyy-MM-dd") +" "+ mailbox.getSendTime()+":00");
|
|
|
+ /* Date endTime = DateUtil.parseDateTime(DateUtils.formatDate(new Date(),"yyyy-MM-dd") +" "+ mailbox.getSendTime()+":00");
|
|
|
if(new Date().getTime() < endTime.getTime()){
|
|
|
//还没到可发邮件的时间
|
|
|
return;
|
|
@@ -548,6 +547,96 @@ public class AgreementLogic {
|
|
|
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+ @Async
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
+ public void sendEmailSche() {
|
|
|
+
|
|
|
+
|
|
|
+ Mailbox mailbox = mailboxService.getById("1");
|
|
|
+
|
|
|
+ //今天要发送的保单
|
|
|
+ Date endTime = DateUtil.parseDateTime(DateUtils.formatDate(new Date(),"yyyy-MM-dd") +" "+ mailbox.getSendTime()+":00");
|
|
|
+ if(new Date().getTime() < endTime.getTime()){
|
|
|
+ //还没到可发邮件的时间
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
+ if (mailboxSendRecordService.lambdaQuery().gt(MailboxSendRecord::getSendTime, DateUtil.beginOfDay(new Date())).count() > 0) {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ List<MailboxReceive> mailboxReceives = mailboxReceiveService.lambdaQuery().eq(MailboxReceive::getMailboxId, mailbox.getId()).list();
|
|
|
+
|
|
|
+
|
|
|
+ //意外保险发送邮件
|
|
|
+ List<PolicyOrder> policyOrders = policyOrderService.lambdaQuery().eq(PolicyOrder::getType, PolicyTypeEnum.AC.getKey())
|
|
|
+ .eq(PolicyOrder::getIsPay, IsYesNoEnum.YES.getKey())
|
|
|
+ .eq(PolicyOrder::getIsSend, IsYesNoEnum.NO.getKey()).list();
|
|
|
+
|
|
|
+
|
|
|
+ if (!CollectionUtils.isEmpty(policyOrders)) {
|
|
|
+
|
|
|
+ EmailUtilsNew emailUtilsNew = new EmailUtilsNew(mailbox.getSendMailbox(), mailbox.getSendPassword());
|
|
|
+
|
|
|
+ MailboxSendRecord mailboxSendRecord = new MailboxSendRecord();
|
|
|
+ mailboxSendRecord.setId(IdWorker.getIdStr());
|
|
|
+ mailboxSendRecord.setPolicyType(PolicyTypeEnum.AC.getKey());
|
|
|
+ mailboxSendRecord.setSendBatch(mailboxSendRecord.getId());
|
|
|
+ mailboxSendRecord.setSendMailbox(mailbox.getSendMailbox());
|
|
|
+ mailboxSendRecord.setReceiveMailbox(mailbox.getAccidentMailbox());
|
|
|
+ mailboxSendRecord.setReceiptStatus(IsYesNoEnum.NO.getKey());
|
|
|
+ mailboxSendRecord.setCompanyWechatId(mailbox.getCompanyWechatId());
|
|
|
+ mailboxSendRecord.setCompanyWechatName(mailbox.getCompanyWechatName());
|
|
|
+
|
|
|
+ List<MailboxSendRecordPolicy> mailboxSendRecordPolicies = new ArrayList<>();
|
|
|
+
|
|
|
+ for (PolicyOrder policyOrder : policyOrders) {
|
|
|
+ MailboxSendRecordPolicy mailboxSendRecordPolicy = new MailboxSendRecordPolicy();
|
|
|
+
|
|
|
+ mailboxSendRecordPolicy.setCompanyWechatId(mailbox.getCompanyWechatId());
|
|
|
+ mailboxSendRecordPolicy.setCompanyWechatName(mailbox.getCompanyWechatName());
|
|
|
+ mailboxSendRecordPolicy.setPolicyNumber(policyOrder.getPolicyNumber());
|
|
|
+ mailboxSendRecordPolicy.setPolicyName(policyOrder.getWorkerName());
|
|
|
+ mailboxSendRecordPolicy.setWebsitName(policyOrder.getWebsitName());
|
|
|
+ mailboxSendRecordPolicy.setWebsitId(policyOrder.getWebsitId());
|
|
|
+ mailboxSendRecordPolicy.setPolicyMobile(policyOrder.getWorkerMobile());
|
|
|
+ mailboxSendRecordPolicy.setPolicyIdcard(policyOrder.getWorkerIdcard());
|
|
|
+ mailboxSendRecordPolicy.setType("IN");
|
|
|
+ mailboxSendRecordPolicy.setSendBatch(mailboxSendRecord.getSendBatch());
|
|
|
+ mailboxSendRecordPolicy.setPolicyOrderId(policyOrder.getId());
|
|
|
+ mailboxSendRecordPolicy.setPolicyType(PolicyTypeEnum.AC.getKey());
|
|
|
+
|
|
|
+ mailboxSendRecordPolicies.add(mailboxSendRecordPolicy);
|
|
|
+
|
|
|
+ policyOrder.setIsSend(IsYesNoEnum.YES.getKey());
|
|
|
+ policyOrder.setSendTime(new Date());
|
|
|
+ policyOrder.setSendBatch(mailboxSendRecord.getSendBatch());
|
|
|
+ policyOrder.updateById();
|
|
|
+ }
|
|
|
+
|
|
|
+ mailboxSendRecord.insert();
|
|
|
+ mailboxSendRecordPolicyService.saveBatch(mailboxSendRecordPolicies);
|
|
|
+
|
|
|
+ //发邮件
|
|
|
+ try {
|
|
|
+ this.sendEmailFile(mailboxSendRecordPolicies, mailboxSendRecord, mailbox,emailUtilsNew);
|
|
|
+ mailboxSendRecord.setSendStatus("OK");
|
|
|
+ mailboxSendRecord.setSendTime(new Date());
|
|
|
+ mailboxSendRecord.updateById();
|
|
|
+ } catch (Exception e) {
|
|
|
+ mailboxSendRecord.setSendStatus("NO");
|
|
|
+ mailboxSendRecord.setSendTime(new Date());
|
|
|
+ mailboxSendRecord.updateById();
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
public void receEmail() throws IOException, MessagingException {
|
|
|
|
|
|
Mailbox mailbox = mailboxService.getById("1");
|
|
@@ -891,6 +980,106 @@ public class AgreementLogic {
|
|
|
}
|
|
|
|
|
|
|
|
|
+ @Async
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
+ public void sendEmailScheEMTask2() {
|
|
|
+
|
|
|
+
|
|
|
+ Mailbox mailbox = mailboxService.getById("1");
|
|
|
+
|
|
|
+ //今天要发送的保单
|
|
|
+ //Date startTime = DateUtil.beginOfDay(new Date());
|
|
|
+ /* Date endTime = DateUtil.parseDateTime(DateUtils.formatDate(new Date(),"yyyy-MM-dd") +" "+ mailbox.getSendTime()+":00");
|
|
|
+ if(new Date().getTime() < endTime.getTime()){
|
|
|
+ //还没到可发邮件的时间
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
+ if (mailboxSendRecordService.lambdaQuery().gt(MailboxSendRecord::getSendTime, DateUtil.beginOfDay(new Date())).count() > 0) {
|
|
|
+ return;
|
|
|
+ }*/
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ List<MailboxReceive> mailboxReceives = mailboxReceiveService.lambdaQuery().eq(MailboxReceive::getMailboxId, mailbox.getId()).list();
|
|
|
+
|
|
|
+
|
|
|
+ //雇主保险发送邮件
|
|
|
+ List<PolicyOrder> policyOrdersEm = policyOrderService.lambdaQuery()
|
|
|
+ .eq(PolicyOrder::getType, PolicyTypeEnum.EM.getKey())
|
|
|
+ .eq(PolicyOrder::getIsImport, IsYesNoEnum.NO.getKey())
|
|
|
+ .eq(PolicyOrder::getIsSend, IsYesNoEnum.NO.getKey()).list();
|
|
|
+
|
|
|
+ if (!CollectionUtils.isEmpty(policyOrdersEm)) {
|
|
|
+
|
|
|
+ EmailUtilsNew emailUtilsNew = new EmailUtilsNew(mailbox.getSendMailbox(), mailbox.getSendPassword());
|
|
|
+ MailboxSendRecord mailboxSendRecord = new MailboxSendRecord();
|
|
|
+ mailboxSendRecord.setId(IdWorker.getIdStr());
|
|
|
+ mailboxSendRecord.setPolicyType(PolicyTypeEnum.EM.getKey());
|
|
|
+ mailboxSendRecord.setSendBatch(mailboxSendRecord.getId());
|
|
|
+ mailboxSendRecord.setSendMailbox(mailbox.getSendMailbox());
|
|
|
+ mailboxSendRecord.setReceiveMailbox(mailbox.getEmployerMailbox());
|
|
|
+ mailboxSendRecord.setReceiptStatus(IsYesNoEnum.NO.getKey());
|
|
|
+ mailboxSendRecord.setCompanyWechatId(mailbox.getCompanyWechatId());
|
|
|
+ mailboxSendRecord.setCompanyWechatName(mailbox.getCompanyWechatName());
|
|
|
+
|
|
|
+ List<MailboxSendRecordPolicy> mailboxSendRecordPolicies = new ArrayList<>();
|
|
|
+
|
|
|
+ for (PolicyOrder policyOrder : policyOrdersEm) {
|
|
|
+ MailboxSendRecordPolicy mailboxSendRecordPolicy = new MailboxSendRecordPolicy();
|
|
|
+
|
|
|
+ mailboxSendRecordPolicy.setCompanyWechatId(mailboxSendRecord.getCompanyWechatId());
|
|
|
+ mailboxSendRecordPolicy.setCompanyWechatName(mailboxSendRecord.getCompanyWechatName());
|
|
|
+ mailboxSendRecordPolicy.setPolicyNumber(policyOrder.getPolicyId());
|
|
|
+ mailboxSendRecordPolicy.setPolicyName(policyOrder.getWorkerName());
|
|
|
+ mailboxSendRecordPolicy.setPolicyOrderId(policyOrder.getId());
|
|
|
+ mailboxSendRecordPolicy.setWebsitName(policyOrder.getWebsitName());
|
|
|
+ mailboxSendRecordPolicy.setWebsitId(policyOrder.getWebsitId());
|
|
|
+ mailboxSendRecordPolicy.setPolicyMobile(policyOrder.getWorkerMobile());
|
|
|
+
|
|
|
+ mailboxSendRecordPolicy.setPolicyIdcard(policyOrder.getWorkerIdcard());
|
|
|
+ mailboxSendRecordPolicy.setPolicyIdcard(policyOrder.getWorkerIdcard());
|
|
|
+ mailboxSendRecordPolicy.setType("IN");
|
|
|
+ mailboxSendRecordPolicy.setSendBatch(mailboxSendRecord.getSendBatch());
|
|
|
+ mailboxSendRecordPolicy.setPolicyType(PolicyTypeEnum.EM.getKey());
|
|
|
+
|
|
|
+ if (!StringUtil.isEmpty(policyOrder.getReplaceName())) {
|
|
|
+ mailboxSendRecordPolicy.setType("RE");
|
|
|
+ mailboxSendRecordPolicy.setReplaceName(policyOrder.getReplaceName());
|
|
|
+ mailboxSendRecordPolicy.setReplaceIdcard(policyOrder.getReplaceIdcard());
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ mailboxSendRecordPolicies.add(mailboxSendRecordPolicy);
|
|
|
+
|
|
|
+ policyOrder.setIsSend(IsYesNoEnum.YES.getKey());
|
|
|
+ policyOrder.setSendTime(new Date());
|
|
|
+ policyOrder.setSendBatch(mailboxSendRecord.getSendBatch());
|
|
|
+ policyOrder.updateById();
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ //发邮件
|
|
|
+ try {
|
|
|
+ this.sendEmailFileEm(mailboxSendRecordPolicies, mailboxSendRecord, mailbox, emailUtilsNew);
|
|
|
+ mailboxSendRecord.setSendStatus("OK");
|
|
|
+ mailboxSendRecord.setSendTime(new Date());
|
|
|
+ mailboxSendRecord.updateById();
|
|
|
+ } catch (Exception e) {
|
|
|
+ mailboxSendRecord.setSendStatus("NO");
|
|
|
+ mailboxSendRecord.setSendTime(new Date());
|
|
|
+ mailboxSendRecord.updateById();
|
|
|
+ }
|
|
|
+
|
|
|
+ mailboxSendRecord.insert();
|
|
|
+ mailboxSendRecordPolicyService.saveBatch(mailboxSendRecordPolicies);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
|
|
|
@Async
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
@@ -901,7 +1090,7 @@ public class AgreementLogic {
|
|
|
|
|
|
//今天要发送的保单
|
|
|
//Date startTime = DateUtil.beginOfDay(new Date());
|
|
|
-/* Date endTime = DateUtil.parseDateTime(DateUtils.formatDate(new Date(),"yyyy-MM-dd") +" "+ mailbox.getSendTime()+":00");
|
|
|
+ Date endTime = DateUtil.parseDateTime(DateUtils.formatDate(new Date(),"yyyy-MM-dd") +" "+ mailbox.getSendTime()+":00");
|
|
|
if(new Date().getTime() < endTime.getTime()){
|
|
|
//还没到可发邮件的时间
|
|
|
return;
|
|
@@ -909,7 +1098,7 @@ public class AgreementLogic {
|
|
|
|
|
|
if (mailboxSendRecordService.lambdaQuery().gt(MailboxSendRecord::getSendTime, DateUtil.beginOfDay(new Date())).count() > 0) {
|
|
|
return;
|
|
|
- }*/
|
|
|
+ }
|
|
|
|
|
|
|
|
|
|
|
@@ -990,9 +1179,11 @@ public class AgreementLogic {
|
|
|
|
|
|
|
|
|
}
|
|
|
+
|
|
|
+
|
|
|
@Async
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
- public void sendEmailScheIN() {
|
|
|
+ public void sendEmailScheINTask2() {
|
|
|
|
|
|
Mailbox mailbox = mailboxService.getById("1");
|
|
|
|
|
@@ -1081,6 +1272,98 @@ public class AgreementLogic {
|
|
|
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+ @Async
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
+ public void sendEmailScheIN() {
|
|
|
+
|
|
|
+ Mailbox mailbox = mailboxService.getById("1");
|
|
|
+
|
|
|
+ //今天要发送的保单
|
|
|
+ //Date startTime = DateUtil.beginOfDay(new Date());
|
|
|
+ Date endTime = DateUtil.parseDateTime(DateUtils.formatDate(new Date(),"yyyy-MM-dd") +" "+ mailbox.getSendTime()+":00");
|
|
|
+ if(new Date().getTime() < endTime.getTime()){
|
|
|
+ //还没到可发邮件的时间
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
+ if (mailboxSendRecordService.lambdaQuery().gt(MailboxSendRecord::getSendTime, DateUtil.beginOfDay(new Date())).count() > 0) {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ List<MailboxReceive> mailboxReceives = mailboxReceiveService.lambdaQuery().eq(MailboxReceive::getMailboxId, mailbox.getId()).list();
|
|
|
+ //工伤保险发送邮件
|
|
|
+ for (MailboxReceive mailboxReceive : mailboxReceives) {
|
|
|
+
|
|
|
+ EmailUtilsNew emailUtilsNew = new EmailUtilsNew(mailbox.getSendMailbox(), mailbox.getSendPassword());
|
|
|
+ List<PolicyOrder> policyOrdersIn = policyOrderService.lambdaQuery()
|
|
|
+ .eq(PolicyOrder::getType, PolicyTypeEnum.IN.getKey())
|
|
|
+ .eq(PolicyOrder::getIsImport, IsYesNoEnum.NO.getKey())
|
|
|
+ .eq(PolicyOrder::getBuyUnitId, mailboxReceive.getDictId())
|
|
|
+ .eq(PolicyOrder::getIsSend, IsYesNoEnum.NO.getKey()).list();
|
|
|
+
|
|
|
+ if (!CollectionUtils.isEmpty(policyOrdersIn)) {
|
|
|
+
|
|
|
+
|
|
|
+ MailboxSendRecord mailboxSendRecord = new MailboxSendRecord();
|
|
|
+ mailboxSendRecord.setId(IdWorker.getIdStr());
|
|
|
+ mailboxSendRecord.setPolicyType(PolicyTypeEnum.IN.getKey());
|
|
|
+ mailboxSendRecord.setSendBatch(mailboxSendRecord.getId());
|
|
|
+ mailboxSendRecord.setSendMailbox(mailbox.getSendMailbox());
|
|
|
+ mailboxSendRecord.setReceiveMailbox(mailboxReceive.getReceiveMailbox());
|
|
|
+ mailboxSendRecord.setReceiptStatus(IsYesNoEnum.NO.getKey());
|
|
|
+ mailboxSendRecord.setCompanyWechatId(mailbox.getCompanyWechatId());
|
|
|
+ mailboxSendRecord.setCompanyWechatName(mailbox.getCompanyWechatName());
|
|
|
+
|
|
|
+ List<MailboxSendRecordPolicy> mailboxSendRecordPolicies = new ArrayList<>();
|
|
|
+
|
|
|
+ for (PolicyOrder policyOrder : policyOrdersIn) {
|
|
|
+ MailboxSendRecordPolicy mailboxSendRecordPolicy = new MailboxSendRecordPolicy();
|
|
|
+
|
|
|
+ mailboxSendRecordPolicy.setCompanyWechatId(mailboxSendRecord.getCompanyWechatId());
|
|
|
+ mailboxSendRecordPolicy.setCompanyWechatName(mailboxSendRecord.getCompanyWechatName());
|
|
|
+ mailboxSendRecordPolicy.setPolicyNumber(policyOrder.getPolicyId());
|
|
|
+ mailboxSendRecordPolicy.setPolicyOrderId(policyOrder.getId());
|
|
|
+ mailboxSendRecordPolicy.setPolicyName(policyOrder.getWorkerName());
|
|
|
+ mailboxSendRecordPolicy.setWebsitName(policyOrder.getWebsitName());
|
|
|
+ mailboxSendRecordPolicy.setWebsitId(policyOrder.getWebsitId());
|
|
|
+ mailboxSendRecordPolicy.setPolicyMobile(policyOrder.getWorkerMobile());
|
|
|
+ mailboxSendRecordPolicy.setPolicyIdcard(policyOrder.getWorkerIdcard());
|
|
|
+ mailboxSendRecordPolicy.setType("IN");
|
|
|
+ mailboxSendRecordPolicy.setSendBatch(mailboxSendRecord.getSendBatch());
|
|
|
+ mailboxSendRecordPolicy.setPolicyType(PolicyTypeEnum.IN.getKey());
|
|
|
+
|
|
|
+
|
|
|
+ mailboxSendRecordPolicies.add(mailboxSendRecordPolicy);
|
|
|
+
|
|
|
+ policyOrder.setIsSend(IsYesNoEnum.YES.getKey());
|
|
|
+ policyOrder.setSendTime(new Date());
|
|
|
+ policyOrder.setSendBatch(mailboxSendRecord.getSendBatch());
|
|
|
+ policyOrder.updateById();
|
|
|
+ }
|
|
|
+
|
|
|
+ mailboxSendRecord.insert();
|
|
|
+ mailboxSendRecordPolicyService.saveBatch(mailboxSendRecordPolicies);
|
|
|
+
|
|
|
+ //发邮件
|
|
|
+ try {
|
|
|
+ this.sendEmailFileIn(mailboxSendRecordPolicies, mailboxSendRecord, mailbox, emailUtilsNew);
|
|
|
+ mailboxSendRecord.setSendStatus("OK");
|
|
|
+ mailboxSendRecord.setSendTime(new Date());
|
|
|
+ mailboxSendRecord.updateById();
|
|
|
+ } catch (Exception e) {
|
|
|
+ mailboxSendRecord.setSendStatus("NO");
|
|
|
+ mailboxSendRecord.setSendTime(new Date());
|
|
|
+ mailboxSendRecord.updateById();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
public void task6() {
|
|
|
|
|
|
|
|
@@ -1224,13 +1507,16 @@ public class AgreementLogic {
|
|
|
for (LeLetterItem letterItem : letterItems) {
|
|
|
|
|
|
letterItem.setExamineStatus("OK");
|
|
|
+ letterItem.setExamineTime(new Date());
|
|
|
letterItem.setExamineName("审批截止时间已到自动批复");
|
|
|
|
|
|
-
|
|
|
+ letterItem.updateById();
|
|
|
leLetterService.lambdaUpdate().eq(LeLetter::getStatus, LetterStatusEnum.WAIT_EXAMINE.getKey())
|
|
|
.eq(LeLetter::getLeLetterId,letterItem.getLeLetterId())
|
|
|
.set(LeLetter::getStatus, LetterStatusEnum.REVOKE.getKey())
|
|
|
.set(LeLetter::getExamineStatus, "OK")
|
|
|
+ .set(LeLetter::getExamineTime, new Date())
|
|
|
+ .set(LeLetter::getExamineName, "审批截止时间已到自动批复")
|
|
|
.update();
|
|
|
|
|
|
}
|