缴费详情 #99
+23
-7
@@ -6,10 +6,7 @@ import com.ruoyi.wisdomarbitrate.domain.CaseApplication;
|
|||||||
import com.ruoyi.wisdomarbitrate.service.IAdjudicationService;
|
import com.ruoyi.wisdomarbitrate.service.IAdjudicationService;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
import org.springframework.web.bind.annotation.PostMapping;
|
import org.springframework.web.bind.annotation.*;
|
||||||
import org.springframework.web.bind.annotation.RequestBody;
|
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
|
||||||
import org.springframework.web.bind.annotation.RestController;
|
|
||||||
|
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/adjudication")
|
@RequestMapping("/adjudication")
|
||||||
@@ -26,8 +23,27 @@ public class AdjudicationController extends BaseController {
|
|||||||
public AjaxResult createDocument(@Validated @RequestBody CaseApplication caseApplication){
|
public AjaxResult createDocument(@Validated @RequestBody CaseApplication caseApplication){
|
||||||
return adjudicationService.createDocument(caseApplication);
|
return adjudicationService.createDocument(caseApplication);
|
||||||
}
|
}
|
||||||
@PostMapping("/")
|
|
||||||
public AjaxResult sendDocumentByEmail(){
|
/**
|
||||||
return adjudicationService.sendDocumentByEmail();
|
* 裁决书送达(电子邮件)
|
||||||
|
* @param id 案件id
|
||||||
|
* @param appEmail 申请人邮箱
|
||||||
|
* @param resEmail 被申请人邮箱
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@PostMapping("/delivery")
|
||||||
|
public AjaxResult sendDocumentByEmail(Long id,String appEmail,String resEmail){
|
||||||
|
return adjudicationService.sendDocumentByEmail(id,appEmail,resEmail);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据快递单号查询物流信息
|
||||||
|
* @param trackingNum 单号
|
||||||
|
* @param phoneLastFour 收/寄件人手机号后四位,顺丰快递需填写本字段。
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@GetMapping("/logistics")
|
||||||
|
public AjaxResult getLogisticsInfo(String trackingNum,Integer phoneLastFour){
|
||||||
|
return adjudicationService.getLogisticsInfo(trackingNum,phoneLastFour);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -92,30 +92,16 @@ spring:
|
|||||||
resources:
|
resources:
|
||||||
static-locations: file:/home/ruoyi/
|
static-locations: file:/home/ruoyi/
|
||||||
mail:
|
mail:
|
||||||
# 邮件服务地址
|
|
||||||
host: smtp.163.com
|
host: smtp.163.com
|
||||||
# 默认端口25,可不写
|
|
||||||
port: 25
|
port: 25
|
||||||
# 编码格式
|
username: hjbjava@163.com
|
||||||
default-encoding: utf-8
|
password: BSRSSEPJWGNNVYYL
|
||||||
# 发送者用户名
|
default-encoding: UTF-8
|
||||||
username: xxx@163.com
|
properties:
|
||||||
# 授权码,刚才获取的代码
|
mail:
|
||||||
password: xxx
|
smtp:
|
||||||
# 其它参数
|
socketFactoryClass: javax.net.ssl.SSLSocketFactory
|
||||||
# properties:
|
debug: false
|
||||||
# mail:
|
|
||||||
# smtp:
|
|
||||||
# # 如果是用 SSL 方式,需要配置如下属性
|
|
||||||
# ssl:
|
|
||||||
# enable: true
|
|
||||||
# required: true
|
|
||||||
# # 邮件接收时间的限制,单位毫秒
|
|
||||||
# timeout: 10000
|
|
||||||
# # 连接时间的限制,单位毫秒
|
|
||||||
# connectiontimeout: 10000
|
|
||||||
# # 邮件发送时间的限制,单位毫秒
|
|
||||||
# writetimeout: 10000
|
|
||||||
|
|
||||||
# token配置
|
# token配置
|
||||||
token:
|
token:
|
||||||
|
|||||||
@@ -159,6 +159,21 @@
|
|||||||
<version>3.1.4</version>
|
<version>3.1.4</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
|
<dependency>
|
||||||
|
<groupId>javax.activation</groupId>
|
||||||
|
<artifactId>activation</artifactId>
|
||||||
|
<version>1.1.1</version>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
|
<!-- https://mvnrepository.com/artifact/javax.mail/mail -->
|
||||||
|
<dependency>
|
||||||
|
<groupId>javax.mail</groupId>
|
||||||
|
<artifactId>mail</artifactId>
|
||||||
|
<version>1.4.7</version>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</dependencies>
|
</dependencies>
|
||||||
|
|
||||||
</project>
|
</project>
|
||||||
@@ -0,0 +1,187 @@
|
|||||||
|
package com.ruoyi.common.utils;
|
||||||
|
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.springframework.beans.factory.annotation.Value;
|
||||||
|
import org.springframework.mail.SimpleMailMessage;
|
||||||
|
|
||||||
|
import org.springframework.mail.javamail.JavaMailSender;
|
||||||
|
import org.springframework.mail.javamail.JavaMailSenderImpl;
|
||||||
|
import org.springframework.mail.javamail.MimeMessageHelper;
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
import javax.mail.MessagingException;
|
||||||
|
import javax.mail.internet.MimeMessage;
|
||||||
|
import javax.validation.constraints.NotNull;
|
||||||
|
import java.io.File;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.regex.Matcher;
|
||||||
|
import java.util.regex.Pattern;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @ClassName EmailInUtil
|
||||||
|
* @Description 邮件发送工具
|
||||||
|
*/
|
||||||
|
@Component
|
||||||
|
@Data
|
||||||
|
@Slf4j
|
||||||
|
public class EmailOutUtil {
|
||||||
|
private static Pattern emailPattern = Pattern.compile("^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\\.[a-zA-Z0-9_-]+)+$");
|
||||||
|
// private static Pattern phonePattern = Pattern.compile("0?(13|14|15|18)[0-9]{9}");
|
||||||
|
private static Pattern phonePattern = Pattern.compile("^1\\d{10}$");
|
||||||
|
|
||||||
|
|
||||||
|
// @Autowired
|
||||||
|
// private JavaMailSender mailSender;
|
||||||
|
|
||||||
|
// 发送发邮箱地址(外网地址)
|
||||||
|
// @Value("${spring.mail-out-network.from}")
|
||||||
|
// private static String fromOut;
|
||||||
|
@Value("${spring.mail.host}")
|
||||||
|
private String hostOut;
|
||||||
|
@Value("${spring.mail.username}")
|
||||||
|
private String usernameOut;
|
||||||
|
@Value("${spring.mail.password}")
|
||||||
|
private String passwordOut;
|
||||||
|
@Value("${spring.mail.port}")
|
||||||
|
private Integer portOut;
|
||||||
|
|
||||||
|
public JavaMailSender rebuildMailSender() {
|
||||||
|
JavaMailSenderImpl mailSender = new JavaMailSenderImpl();
|
||||||
|
mailSender.setHost(hostOut);
|
||||||
|
mailSender.setUsername(usernameOut);
|
||||||
|
mailSender.setPassword(passwordOut);
|
||||||
|
mailSender.setPort(portOut);
|
||||||
|
mailSender.setProtocol("smtp");
|
||||||
|
mailSender.setDefaultEncoding("UTF-8");
|
||||||
|
return mailSender;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 发送纯文本邮件信息
|
||||||
|
*
|
||||||
|
* @param to 接收方
|
||||||
|
* @param subject 邮件主题
|
||||||
|
* @param content 邮件内容(发送内容)
|
||||||
|
*/
|
||||||
|
public void sendMessage(String to, String subject, String content, String from, JavaMailSender mailSender) {
|
||||||
|
// 创建一个邮件对象
|
||||||
|
SimpleMailMessage msg = new SimpleMailMessage();
|
||||||
|
msg.setFrom(from);
|
||||||
|
msg.setTo(to);
|
||||||
|
// 设置邮件主题
|
||||||
|
msg.setSubject(subject);
|
||||||
|
// 设置邮件内容
|
||||||
|
msg.setText(content);
|
||||||
|
// 发送邮件
|
||||||
|
mailSender.send(msg);
|
||||||
|
////System.out.println("发送成功:" + from + ":to:" + to);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 发送带附件的邮件信息
|
||||||
|
*
|
||||||
|
* @param to 接收方
|
||||||
|
* @param subject 邮件主题
|
||||||
|
* @param content 邮件内容(发送内容)
|
||||||
|
* @param fileList 文件集合 // 可发送多个附件
|
||||||
|
*/
|
||||||
|
public void sendMessageCarryFiles(String to, String subject, String content, List<File> fileList, String from, @NotNull JavaMailSender mailSender) {
|
||||||
|
MimeMessage mimeMessage = mailSender.createMimeMessage();
|
||||||
|
try {
|
||||||
|
MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true);
|
||||||
|
helper.setFrom(from);
|
||||||
|
helper.setTo(to);
|
||||||
|
// 设置邮件主题
|
||||||
|
helper.setSubject(subject);
|
||||||
|
// 设置邮件内容
|
||||||
|
helper.setText(content);
|
||||||
|
// 添加附件(多个)
|
||||||
|
if (fileList != null && fileList.size() > 0) {
|
||||||
|
for (File file : fileList) {
|
||||||
|
helper.addAttachment(file.getName(), file);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} catch (MessagingException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
// 发送邮件
|
||||||
|
mailSender.send(mimeMessage);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 发送带附件的邮件信息
|
||||||
|
*
|
||||||
|
* @param to 接收方
|
||||||
|
* @param subject 邮件主题
|
||||||
|
* @param content 邮件内容(发送内容)
|
||||||
|
* @param file 单个文件
|
||||||
|
*/
|
||||||
|
public void sendMessageCarryFile(String to, String subject, String content, File file, String from, JavaMailSender mailSender) {
|
||||||
|
MimeMessage mimeMessage = mailSender.createMimeMessage();
|
||||||
|
try {
|
||||||
|
MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true);
|
||||||
|
helper.setFrom(from);
|
||||||
|
helper.setTo(to);
|
||||||
|
// 设置邮件主题
|
||||||
|
helper.setSubject(subject);
|
||||||
|
// 设置邮件内容
|
||||||
|
helper.setText(content);
|
||||||
|
// 单个附件
|
||||||
|
helper.addAttachment(file.getName(), file);
|
||||||
|
} catch (MessagingException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
// 发送邮件
|
||||||
|
mailSender.send(mimeMessage);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 初始化内外网邮件发送对象
|
||||||
|
*
|
||||||
|
* @param num
|
||||||
|
*/
|
||||||
|
// public static JavaMailSender initJavaMailSender(Integer num) {
|
||||||
|
// if (num != null && num == 1) {
|
||||||
|
// //内网
|
||||||
|
// return rebuildMailSender(hostIn, usernameIn, passwordIn, Integer.parseInt(portIn), "smtps");
|
||||||
|
// } else {
|
||||||
|
// //外网
|
||||||
|
// return rebuildMailSender(hostOut, usernameOut, passwordOut, Integer.parseInt(portOut), "smtps");
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
|
||||||
|
// public static String getInnerFrom() {
|
||||||
|
// return EmailInUtil;
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
// public static String getOutterFrom() {
|
||||||
|
// return fromOut;
|
||||||
|
// }
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 验证邮箱格式
|
||||||
|
*
|
||||||
|
* @param str
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public static boolean isEmail(String str) {
|
||||||
|
boolean flag = false;
|
||||||
|
Matcher matcher = emailPattern.matcher(str);
|
||||||
|
if (matcher.matches()) {
|
||||||
|
flag = true;
|
||||||
|
}
|
||||||
|
return flag;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static boolean isPhoneNumber(String str) {
|
||||||
|
boolean flag = false;
|
||||||
|
Matcher matcher = phonePattern.matcher(str);
|
||||||
|
if (matcher.matches()) {
|
||||||
|
flag = true;
|
||||||
|
}
|
||||||
|
return flag;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,49 +0,0 @@
|
|||||||
//package com.ruoyi.common.utils;
|
|
||||||
//
|
|
||||||
//
|
|
||||||
//import jakarta.mail.internet.MimeMessage;
|
|
||||||
//import org.springframework.beans.factory.annotation.Autowired;
|
|
||||||
//import org.springframework.core.io.FileSystemResource;
|
|
||||||
//import org.springframework.mail.javamail.JavaMailSender;
|
|
||||||
//import org.springframework.mail.javamail.MimeMessageHelper;
|
|
||||||
//import org.springframework.stereotype.Component;
|
|
||||||
//
|
|
||||||
//import java.io.File;
|
|
||||||
//import java.util.List;
|
|
||||||
//
|
|
||||||
//@Component
|
|
||||||
//public class SendMailUtils {
|
|
||||||
// private static final String SENDER = "xxx@163.com";
|
|
||||||
// @Autowired
|
|
||||||
// private JavaMailSender mailSender;
|
|
||||||
// /**
|
|
||||||
// * 发送带附件的邮件
|
|
||||||
// *
|
|
||||||
// * @param to 收件人
|
|
||||||
// * @param subject 主题
|
|
||||||
// * @param content 内容
|
|
||||||
// * @param fileList 附件
|
|
||||||
// */
|
|
||||||
// public void sendFileMail(String to, String subject, String content, List<File> fileList) {
|
|
||||||
// MimeMessage message = mailSender.createMimeMessage();
|
|
||||||
// try {
|
|
||||||
// //true表示需要创建一个multipart message
|
|
||||||
// MimeMessageHelper helper = new MimeMessageHelper(message, true);
|
|
||||||
// helper.setFrom(SENDER);
|
|
||||||
// helper.setTo(to);
|
|
||||||
// helper.setSubject(subject);
|
|
||||||
// helper.setText(content, true);
|
|
||||||
//
|
|
||||||
// if (fileList != null && fileList.size() > 0) {
|
|
||||||
// for (File file : fileList) {
|
|
||||||
// FileSystemResource fileSystemResource = new FileSystemResource(file);
|
|
||||||
// String fileName = fileSystemResource.getFilename();
|
|
||||||
// helper.addAttachment(fileName, fileSystemResource);
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// mailSender.send(message);
|
|
||||||
// } catch (MessagingException e) {
|
|
||||||
// System.out.println("发送带附件的邮件时发生异常!" + e);
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
//}
|
|
||||||
+2
-1
@@ -6,6 +6,7 @@ import com.ruoyi.wisdomarbitrate.domain.CaseApplication;
|
|||||||
public interface IAdjudicationService {
|
public interface IAdjudicationService {
|
||||||
AjaxResult createDocument(CaseApplication caseApplication);
|
AjaxResult createDocument(CaseApplication caseApplication);
|
||||||
|
|
||||||
AjaxResult sendDocumentByEmail();
|
AjaxResult sendDocumentByEmail(Long id,String appEmail,String resEmail);
|
||||||
|
|
||||||
|
AjaxResult getLogisticsInfo(String trackingNum,Integer phoneLastFour);
|
||||||
}
|
}
|
||||||
|
|||||||
+111
-27
@@ -3,6 +3,7 @@ package com.ruoyi.wisdomarbitrate.service.impl;
|
|||||||
import com.deepoove.poi.config.Configure;
|
import com.deepoove.poi.config.Configure;
|
||||||
import com.ruoyi.common.constant.CaseApplicationConstants;
|
import com.ruoyi.common.constant.CaseApplicationConstants;
|
||||||
import com.ruoyi.common.core.domain.AjaxResult;
|
import com.ruoyi.common.core.domain.AjaxResult;
|
||||||
|
import com.ruoyi.common.utils.EmailOutUtil;
|
||||||
import com.ruoyi.common.utils.WordUtil;
|
import com.ruoyi.common.utils.WordUtil;
|
||||||
import com.ruoyi.wisdomarbitrate.domain.*;
|
import com.ruoyi.wisdomarbitrate.domain.*;
|
||||||
import com.ruoyi.wisdomarbitrate.mapper.ArbitrateRecordMapper;
|
import com.ruoyi.wisdomarbitrate.mapper.ArbitrateRecordMapper;
|
||||||
@@ -12,9 +13,14 @@ import com.ruoyi.wisdomarbitrate.mapper.CaseAttachMapper;
|
|||||||
import com.ruoyi.wisdomarbitrate.service.IAdjudicationService;
|
import com.ruoyi.wisdomarbitrate.service.IAdjudicationService;
|
||||||
import org.apache.poi.xwpf.usermodel.*;
|
import org.apache.poi.xwpf.usermodel.*;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.mail.MailSendException;
|
||||||
|
import org.springframework.mail.javamail.JavaMailSender;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import java.io.*;
|
import java.io.*;
|
||||||
|
import java.net.HttpURLConnection;
|
||||||
|
import java.net.URL;
|
||||||
|
import java.net.URLEncoder;
|
||||||
import java.nio.file.Files;
|
import java.nio.file.Files;
|
||||||
import java.nio.file.Path;
|
import java.nio.file.Path;
|
||||||
import java.nio.file.StandardCopyOption;
|
import java.nio.file.StandardCopyOption;
|
||||||
@@ -25,6 +31,8 @@ import java.util.*;
|
|||||||
|
|
||||||
@Service
|
@Service
|
||||||
public class AdjudicationServiceImpl implements IAdjudicationService {
|
public class AdjudicationServiceImpl implements IAdjudicationService {
|
||||||
|
private final String apiUrl = "http://api.cainiaoapi.com/api/exp/v1/index";
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private CaseApplicationMapper caseApplicationMapper;
|
private CaseApplicationMapper caseApplicationMapper;
|
||||||
@Autowired
|
@Autowired
|
||||||
@@ -33,13 +41,15 @@ public class AdjudicationServiceImpl implements IAdjudicationService {
|
|||||||
private ArbitrateRecordMapper arbitrateRecordMapper;
|
private ArbitrateRecordMapper arbitrateRecordMapper;
|
||||||
@Autowired
|
@Autowired
|
||||||
private CaseAttachMapper caseAttachMapper;
|
private CaseAttachMapper caseAttachMapper;
|
||||||
|
@Autowired
|
||||||
|
private EmailOutUtil emailOutUtil;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public AjaxResult createDocument(CaseApplication caseApplication) {
|
public AjaxResult createDocument(CaseApplication caseApplication) {
|
||||||
try {
|
try {
|
||||||
Map<String, Object> datas = new HashMap<>();
|
Map<String, Object> datas = new HashMap<>();
|
||||||
Long id = caseApplication.getId();
|
Long id = caseApplication.getId();
|
||||||
if (id == null){
|
if (id == null) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
//获取案件详细信息
|
//获取案件详细信息
|
||||||
@@ -53,8 +63,8 @@ public class AdjudicationServiceImpl implements IAdjudicationService {
|
|||||||
CaseAffiliate caseAffiliate = new CaseAffiliate();
|
CaseAffiliate caseAffiliate = new CaseAffiliate();
|
||||||
caseAffiliate.setCaseAppliId(id);
|
caseAffiliate.setCaseAppliId(id);
|
||||||
List<CaseAffiliate> caseAffiliates = caseAffiliateMapper.selectCaseAffiliate(caseAffiliate);
|
List<CaseAffiliate> caseAffiliates = caseAffiliateMapper.selectCaseAffiliate(caseAffiliate);
|
||||||
if (caseAffiliates != null && caseAffiliates.size() > 0){
|
if (caseAffiliates != null && caseAffiliates.size() > 0) {
|
||||||
for (CaseAffiliate affiliate : caseAffiliates){
|
for (CaseAffiliate affiliate : caseAffiliates) {
|
||||||
//获取身份类型
|
//获取身份类型
|
||||||
int identityType = affiliate.getIdentityType();
|
int identityType = affiliate.getIdentityType();
|
||||||
if (identityType == 1) { //申请人
|
if (identityType == 1) { //申请人
|
||||||
@@ -62,34 +72,34 @@ public class AdjudicationServiceImpl implements IAdjudicationService {
|
|||||||
datas.put("appIDNo", affiliate.getIdentityNum());
|
datas.put("appIDNo", affiliate.getIdentityNum());
|
||||||
datas.put("appAddress", affiliate.getContactAddress());
|
datas.put("appAddress", affiliate.getContactAddress());
|
||||||
datas.put("appAgentName", affiliate.getNameAgent());
|
datas.put("appAgentName", affiliate.getNameAgent());
|
||||||
datas.put("appAgentIDNo",affiliate.getIdentityNumAgent());
|
datas.put("appAgentIDNo", affiliate.getIdentityNumAgent());
|
||||||
}else if (identityType == 2){ //被申请人
|
} else if (identityType == 2) { //被申请人
|
||||||
datas.put("resName", affiliate.getName());
|
datas.put("resName", affiliate.getName());
|
||||||
datas.put("resIDNo", affiliate.getIdentityNum());
|
datas.put("resIDNo", affiliate.getIdentityNum());
|
||||||
datas.put("resAddress", affiliate.getContactAddress());
|
datas.put("resAddress", affiliate.getContactAddress());
|
||||||
datas.put("resAgentName", affiliate.getNameAgent());
|
datas.put("resAgentName", affiliate.getNameAgent());
|
||||||
datas.put("resAgentIDNo",affiliate.getIdentityNumAgent());
|
datas.put("resAgentIDNo", affiliate.getIdentityNumAgent());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
String arbitratorName = caseApplication1.getArbitratorName();
|
String arbitratorName = caseApplication1.getArbitratorName();
|
||||||
datas.put("caseName",caseApplication1.getCaseName());
|
datas.put("caseName", caseApplication1.getCaseName());
|
||||||
datas.put("arbitratorName",arbitratorName);
|
datas.put("arbitratorName", arbitratorName);
|
||||||
Date hearDate = caseApplication1.getHearDate();
|
Date hearDate = caseApplication1.getHearDate();
|
||||||
if (hearDate != null) {
|
if (hearDate != null) {
|
||||||
LocalDate localDate = hearDate.toInstant()
|
LocalDate localDate = hearDate.toInstant()
|
||||||
.atZone(ZoneId.systemDefault())
|
.atZone(ZoneId.systemDefault())
|
||||||
.toLocalDate();
|
.toLocalDate();
|
||||||
datas.put("hearYear", localDate.getYear());
|
datas.put("hearYear", localDate.getYear());
|
||||||
datas.put("hearMonths", localDate.getMonthValue());
|
datas.put("hearMonths", localDate.getMonthValue());
|
||||||
datas.put("hearDay", localDate.getDayOfMonth());
|
datas.put("hearDay", localDate.getDayOfMonth());
|
||||||
}else {
|
} else {
|
||||||
datas.put("hearYear", null);
|
datas.put("hearYear", null);
|
||||||
datas.put("hearMonths", null);
|
datas.put("hearMonths", null);
|
||||||
datas.put("hearDay", null);
|
datas.put("hearDay", null);
|
||||||
}
|
}
|
||||||
datas.put("appArbitrationClaims", caseApplication1.getArbitratClaims());
|
datas.put("appArbitrationClaims", caseApplication1.getArbitratClaims());
|
||||||
if (arbitrateRecord1!=null){
|
if (arbitrateRecord1 != null) {
|
||||||
datas.put("evidenDetermi", arbitrateRecord1.getEvidenDetermi());
|
datas.put("evidenDetermi", arbitrateRecord1.getEvidenDetermi());
|
||||||
datas.put("factDetermi", arbitrateRecord1.getFactDetermi());
|
datas.put("factDetermi", arbitrateRecord1.getFactDetermi());
|
||||||
datas.put("caseSketch", arbitrateRecord1.getCaseSketch());
|
datas.put("caseSketch", arbitrateRecord1.getCaseSketch());
|
||||||
@@ -97,10 +107,10 @@ public class AdjudicationServiceImpl implements IAdjudicationService {
|
|||||||
datas.put("rulingFollows", arbitrateRecord1.getRulingFollows());
|
datas.put("rulingFollows", arbitrateRecord1.getRulingFollows());
|
||||||
}
|
}
|
||||||
datas.put("legalProvisions", "仲裁法");
|
datas.put("legalProvisions", "仲裁法");
|
||||||
if (arbitratorName==null){
|
if (arbitratorName == null) {
|
||||||
datas.put("arbitratorName1", null);
|
datas.put("arbitratorName1", null);
|
||||||
datas.put("arbitratorName2", null);
|
datas.put("arbitratorName2", null);
|
||||||
}else if (arbitratorName.contains(",")){
|
} else if (arbitratorName.contains(",")) {
|
||||||
String[] nameArray = arbitratorName.split(",");
|
String[] nameArray = arbitratorName.split(",");
|
||||||
String firstName = nameArray[0];
|
String firstName = nameArray[0];
|
||||||
String secondName = nameArray[1];
|
String secondName = nameArray[1];
|
||||||
@@ -115,10 +125,10 @@ public class AdjudicationServiceImpl implements IAdjudicationService {
|
|||||||
datas.put("year", now.getYear());
|
datas.put("year", now.getYear());
|
||||||
datas.put("months", now.getMonthValue());
|
datas.put("months", now.getMonthValue());
|
||||||
datas.put("day", now.getDayOfMonth());
|
datas.put("day", now.getDayOfMonth());
|
||||||
String modalFilePath = "/data/arbitrate-document/template/仲裁裁决书模板.docx";
|
//String modalFilePath = "/data/arbitrate-document/template/仲裁裁决书模板.docx";
|
||||||
//String modalFilePath = "D:/develop/仲裁裁决书模板 (2).docx";
|
String modalFilePath = "D:/develop/仲裁裁决书模板 (2).docx";
|
||||||
String saveFolderPath = "/data/arbitrate-document/formal/" + now.getYear() + "/" + now.getMonthValue() + "/" + now.getDayOfMonth();
|
//String saveFolderPath = "/data/arbitrate-document/formal/" + now.getYear() + "/" + now.getMonthValue() + "/" + now.getDayOfMonth();
|
||||||
//String saveFolderPath = "D:/data/" + now.getYear() + "/" + now.getMonthValue() + "/" + now.getDayOfMonth();
|
String saveFolderPath = "D:/data/" + now.getYear() + "/" + now.getMonthValue() + "/" + now.getDayOfMonth();
|
||||||
String fileName = UUID.randomUUID().toString().replace("-", "") + ".docx";
|
String fileName = UUID.randomUUID().toString().replace("-", "") + ".docx";
|
||||||
String resultFilePath = saveFolderPath + "/" + fileName;
|
String resultFilePath = saveFolderPath + "/" + fileName;
|
||||||
// 创建日期目录
|
// 创建日期目录
|
||||||
@@ -129,7 +139,7 @@ public class AdjudicationServiceImpl implements IAdjudicationService {
|
|||||||
Path sourcePath = new File(modalFilePath).toPath();
|
Path sourcePath = new File(modalFilePath).toPath();
|
||||||
Path destinationPath = new File(resultFilePath).toPath();
|
Path destinationPath = new File(resultFilePath).toPath();
|
||||||
Files.copy(sourcePath, destinationPath, StandardCopyOption.REPLACE_EXISTING);
|
Files.copy(sourcePath, destinationPath, StandardCopyOption.REPLACE_EXISTING);
|
||||||
String docFilePath = WordUtil.getDocFilePath(datas,modalFilePath,resultFilePath);
|
String docFilePath = WordUtil.getDocFilePath(datas, modalFilePath, resultFilePath);
|
||||||
//修改案件状态
|
//修改案件状态
|
||||||
caseApplication1.setCaseStatus(CaseApplicationConstants.VERPRIF_ARBITRATION);
|
caseApplication1.setCaseStatus(CaseApplicationConstants.VERPRIF_ARBITRATION);
|
||||||
caseApplicationMapper.submitCaseApplication(caseApplication1);
|
caseApplicationMapper.submitCaseApplication(caseApplication1);
|
||||||
@@ -141,8 +151,8 @@ public class AdjudicationServiceImpl implements IAdjudicationService {
|
|||||||
.annexType(3)
|
.annexType(3)
|
||||||
.build();
|
.build();
|
||||||
int i = caseAttachMapper.save(caseAttach);
|
int i = caseAttachMapper.save(caseAttach);
|
||||||
if (i>0){
|
if (i > 0) {
|
||||||
if (arbitrateRecord1!=null){
|
if (arbitrateRecord1 != null) {
|
||||||
Integer annexId = caseAttach.getAnnexId();
|
Integer annexId = caseAttach.getAnnexId();
|
||||||
//将附件id保存到仲裁记录表里面
|
//将附件id保存到仲裁记录表里面
|
||||||
arbitrateRecord1.setAnnexId(annexId);
|
arbitrateRecord1.setAnnexId(annexId);
|
||||||
@@ -157,7 +167,81 @@ public class AdjudicationServiceImpl implements IAdjudicationService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public AjaxResult sendDocumentByEmail() {
|
public AjaxResult sendDocumentByEmail(Long id, String appEmail, String resEmail) {
|
||||||
|
CaseApplication caseApplication = new CaseApplication();
|
||||||
|
caseApplication.setId(id);
|
||||||
|
CaseApplication caseApplication1 = caseApplicationMapper.selectCaseApplication(caseApplication);
|
||||||
|
if (caseApplication1 == null) {
|
||||||
|
return AjaxResult.error("未查询到相关案件");
|
||||||
|
}
|
||||||
|
|
||||||
|
//根据案件id查询裁决书
|
||||||
|
try {
|
||||||
|
List<File> fileList = new ArrayList<>();
|
||||||
|
List<CaseAttach> caseAttachList = caseAttachMapper.queryAnnexPathByCaseId(id);
|
||||||
|
if (caseAttachList != null && caseAttachList.size() > 0) {
|
||||||
|
for (CaseAttach caseAttach : caseAttachList) {
|
||||||
|
if (caseAttach.getAnnexType() == 3) {
|
||||||
|
String annexPath = caseAttach.getAnnexPath();
|
||||||
|
fileList.add(new File(annexPath));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//电子邮件送达
|
||||||
|
JavaMailSender javaMailSender = emailOutUtil.rebuildMailSender();
|
||||||
|
if (appEmail != null) {
|
||||||
|
emailOutUtil.sendMessageCarryFiles(appEmail, "案件裁决书", "您的裁决书已送达,详情请查阅附件", fileList
|
||||||
|
, "hjbjava@163.com", javaMailSender);
|
||||||
|
}
|
||||||
|
if (resEmail != null) {
|
||||||
|
emailOutUtil.sendMessageCarryFiles(resEmail, "案件裁决书", "您的裁决书已送达,详情请查阅附件", fileList
|
||||||
|
, "hjbjava@163.com", javaMailSender);
|
||||||
|
}
|
||||||
|
//修改案件状态
|
||||||
|
caseApplication1.setCaseStatus(CaseApplicationConstants.CASE_FILING);
|
||||||
|
caseApplicationMapper.submitCaseApplication(caseApplication1);
|
||||||
|
return AjaxResult.success("仲裁文书送达成功");
|
||||||
|
} catch (MailSendException e) {
|
||||||
|
return AjaxResult.error("发送失败,请检查文件路径");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult getLogisticsInfo(String trackingNum, Integer phoneLastFour) {
|
||||||
|
try {
|
||||||
|
//快递单号查询
|
||||||
|
String key = "70ba5c7b327f71fccd5924f70e3e7b7f";
|
||||||
|
String com = "auto";
|
||||||
|
// 构造查询字符串参数
|
||||||
|
String queryParameters = String.format("key=%s&com=%s&no=%s&phone=%d",
|
||||||
|
URLEncoder.encode(key, "UTF-8"),
|
||||||
|
URLEncoder.encode(com, "UTF-8"),
|
||||||
|
URLEncoder.encode(trackingNum, "UTF-8"),
|
||||||
|
phoneLastFour);
|
||||||
|
// 拼接到API URL中
|
||||||
|
String fullUrl = apiUrl + "?" + queryParameters;
|
||||||
|
URL url = new URL(fullUrl);
|
||||||
|
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
|
||||||
|
connection.setRequestMethod("GET");
|
||||||
|
int responseCode = connection.getResponseCode();
|
||||||
|
if (responseCode == HttpURLConnection.HTTP_OK) {
|
||||||
|
BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
|
||||||
|
String line;
|
||||||
|
StringBuilder response = new StringBuilder();
|
||||||
|
while ((line = reader.readLine()) != null) {
|
||||||
|
response.append(line);
|
||||||
|
}
|
||||||
|
reader.close();
|
||||||
|
// 处理返回的响应数据
|
||||||
|
return AjaxResult.success(response);
|
||||||
|
} else {
|
||||||
|
// 请求失败
|
||||||
|
return AjaxResult.error("请求失败,错误码:" + responseCode);
|
||||||
|
}
|
||||||
|
} catch (IOException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
|
||||||
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user