Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
74112dc93b | ||
|
|
08717e84be | ||
|
|
8d732fb8fb | ||
|
|
5240926cd7 | ||
|
|
16d6d1c29d | ||
|
|
b0e0123c4a | ||
|
|
abb96916e3 | ||
|
|
e3bdb44192 | ||
|
|
ff175c98df | ||
|
|
5c434e576f | ||
|
|
6b5e91c4d7 | ||
|
|
5f622b0641 | ||
|
|
9bfcc02a48 | ||
|
|
a3a3fa17f1 | ||
|
|
f38d6997bc | ||
|
|
13e3503af4 | ||
|
|
70af2e822b | ||
|
|
71a228c625 | ||
|
|
9f79c901ca | ||
|
|
fa782834e7 | ||
|
|
088bd41d0b | ||
|
|
f6b1403e3c | ||
|
|
da105d20e4 | ||
|
|
293dd52e8c | ||
|
|
eeb6757ec8 | ||
|
|
6960564dde | ||
|
|
fb8366fa78 | ||
|
|
31dc8e4032 | ||
|
|
6caf44a9ec | ||
|
|
95cacd287b | ||
|
|
fdf48d2f14 | ||
|
|
b24fc351ea | ||
|
|
11e6c91cc6 | ||
|
|
fd04248c4b | ||
|
|
1f9cea5d3e | ||
|
|
4be8bcab6d | ||
|
|
cf6b0e7d70 | ||
|
|
ff2a7dd781 | ||
|
|
f99cf25adf | ||
|
|
1ea9767674 | ||
|
|
2253984352 | ||
|
|
b14d46803c | ||
|
|
82b6431be9 | ||
|
|
6cb1ecab7b | ||
|
|
061bdc6312 | ||
|
|
f980592507 | ||
|
|
1d0e12ee18 | ||
|
|
d5b6cddd8f | ||
|
|
e4931d1499 | ||
|
|
7748d4e558 | ||
|
|
7d5ee5cffd | ||
|
|
48da135874 | ||
|
|
8be09de49c | ||
|
|
2aff2e8d7d | ||
|
|
06320d99ca | ||
|
|
7cd6c52db5 | ||
|
|
455f3265ec | ||
|
|
33774c51fb | ||
|
|
c68c91e0b3 | ||
|
|
53c64c36da | ||
|
|
7a38c4e8a5 | ||
|
|
66d66e5156 | ||
|
|
20517eaaaa | ||
|
|
deea55b1e9 | ||
|
|
31a9287a8f | ||
|
|
4cd04ef10e | ||
|
|
afb6b2a4b5 | ||
|
|
a12083d93c | ||
|
|
f66af56144 | ||
|
|
0d71663935 | ||
|
|
753039d5e9 | ||
|
|
743040d813 | ||
|
|
9f8e21383d | ||
|
|
4e85bf306b | ||
|
|
1da61f526d | ||
|
|
c7970e884f | ||
|
|
20c95700ab | ||
|
|
547394f8d6 | ||
|
|
a671da2f11 | ||
|
|
60561da44d | ||
|
|
e5138339a8 | ||
|
|
45f30d2dbc | ||
|
|
8aa82b28be | ||
|
|
23847cf918 | ||
|
|
c6d0cb9579 | ||
|
|
e590293b33 | ||
|
|
e1fa902c59 | ||
|
|
5eb7b070fd | ||
|
|
fbf10a1ed9 | ||
|
|
0e96b4d8f4 | ||
|
|
61f8638635 | ||
|
|
6c9a09f29a | ||
|
|
2787aa38c6 | ||
|
|
d69b959534 | ||
|
|
60c1db6e2a | ||
|
|
d4db9785b3 | ||
|
|
7ace643452 | ||
|
|
c4276aac48 | ||
|
|
02386824af | ||
|
|
209de376e3 | ||
|
|
4c4dfcd9d5 | ||
|
|
a78e3e23d6 | ||
|
|
5730bb12a7 | ||
|
|
2e1ceaa393 | ||
|
|
b1f0fb8f6f | ||
|
|
2e1c5eae8a | ||
|
|
23d53688e4 | ||
|
|
5558debc20 | ||
|
|
1c9e92b60e | ||
|
|
4be7832789 | ||
|
|
0c968937af | ||
|
|
c8aa73fc21 | ||
|
|
b2d42ccfba | ||
|
|
a832a8281a | ||
|
|
27fa06ab04 | ||
|
|
397950e033 | ||
|
|
aa36758066 | ||
|
|
69b5b0d072 | ||
|
|
6f80764866 | ||
|
|
a10be7303f | ||
|
|
65dbeb9bdc | ||
|
|
4286d35243 | ||
|
|
4ea958e91d | ||
|
|
23f4c31338 | ||
|
|
67b3566eb8 | ||
|
|
965a5912c0 | ||
|
|
f62248e93e | ||
|
|
2b6deb09b9 | ||
|
|
9604bc938a | ||
|
|
9d3b296a27 | ||
|
|
9a1f6a107e | ||
|
|
db0cea67be | ||
|
|
992817300c | ||
|
|
9fdd40ee4e | ||
|
|
5d4929f36b | ||
|
|
a7826fbc16 | ||
|
|
dc498364ae | ||
|
|
0755325701 | ||
|
|
3eeb1a0882 | ||
|
|
f989831de2 | ||
|
|
078c214202 | ||
|
|
4bc2940f9e | ||
|
|
923d1e0483 | ||
|
|
a87fdca103 | ||
|
|
0ec450d85c | ||
|
|
c7988344d3 | ||
|
|
3cc3be3ee0 | ||
|
|
3a831e31ad | ||
|
|
a525fd6a16 | ||
|
|
6d720c5757 | ||
|
|
023037e2ca | ||
|
|
b3355ff79f | ||
|
|
feb30e9fe5 | ||
|
|
f9c3609b8b | ||
|
|
79bf8423e0 | ||
|
|
45bea53a70 | ||
|
|
a24b78473f | ||
|
|
f9dbd8a010 | ||
|
|
31b4f482dd | ||
|
|
08758c78ab | ||
|
|
4a23dfbc2a | ||
|
|
086cfca5dc | ||
|
|
120b30c4ea | ||
|
|
df93d06ae2 | ||
|
|
a683b38e8d | ||
|
|
33d44eed4d | ||
|
|
8615b98be2 | ||
|
|
57b5325154 | ||
|
|
1ccbc8c895 | ||
|
|
0be2808800 | ||
|
|
93b3c29ac3 | ||
|
|
ffb0a9f6da | ||
|
|
93d9e11688 | ||
|
|
20e6986ec9 | ||
|
|
ba6237853e | ||
|
|
cc5c4ab49a |
+107
@@ -1,11 +1,16 @@
|
||||
package com.ruoyi.web.controller.wisdomarbitrate;
|
||||
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.AjaxResult;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.core.redis.RedisCache;
|
||||
import com.ruoyi.common.exception.EsignDemoException;
|
||||
import com.ruoyi.wisdomarbitrate.StringIdsReq;
|
||||
import com.ruoyi.wisdomarbitrate.domain.BatchCaseApplication;
|
||||
import com.ruoyi.wisdomarbitrate.domain.CaseApplication;
|
||||
import com.ruoyi.wisdomarbitrate.domain.SealSignRecord;
|
||||
import com.ruoyi.wisdomarbitrate.domain.vo.BookSendVO;
|
||||
import com.ruoyi.wisdomarbitrate.domain.vo.LogisticsInfoVO;
|
||||
import com.ruoyi.wisdomarbitrate.service.IAdjudicationService;
|
||||
@@ -14,6 +19,7 @@ import org.springframework.security.access.prepost.PreAuthorize;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.List;
|
||||
|
||||
@RestController
|
||||
@@ -22,7 +28,65 @@ public class AdjudicationController extends BaseController {
|
||||
@Autowired
|
||||
private IAdjudicationService adjudicationService;
|
||||
|
||||
/**
|
||||
* 根据签署流程id查询批量签名链接
|
||||
*/
|
||||
// @PreAuthorize("@ss.hasPermi('caseManagement:list:selectSignUrl')")
|
||||
@PostMapping("/selectBatchSignUrl")
|
||||
public AjaxResult selectBatchSignUrl(@RequestBody StringIdsReq idsReq) {
|
||||
if(CollectionUtil.isEmpty(idsReq.getIds())|| StrUtil.isEmpty(idsReq.getPsnAccount())){
|
||||
return error("参数校验失败");
|
||||
}
|
||||
SealSignRecord sealSignRecordselect = adjudicationService.selectBatchSignUrl(idsReq);
|
||||
return success(sealSignRecordselect);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据批号查询批量签名链接
|
||||
*/
|
||||
@PostMapping("/getSignUrlBatch")
|
||||
public AjaxResult getSignUrlBatch(@RequestBody StringIdsReq idsReq) {
|
||||
if(StrUtil.isEmpty(idsReq.getBatchNumber().toString())|| StrUtil.isEmpty(idsReq.getPsnAccount())){
|
||||
return error("参数校验失败");
|
||||
}
|
||||
SealSignRecord sealSignRecordselect = adjudicationService.getSignUrlBatch(idsReq);
|
||||
return success(sealSignRecordselect);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据签署流程id查询批量用印链接
|
||||
*/
|
||||
// @PreAuthorize("@ss.hasPermi('caseManagement:list:selectSignUrl')")
|
||||
@PostMapping("/selectBatchSealUrl")
|
||||
public AjaxResult selectBatchSealUrl(@RequestBody StringIdsReq idsReq) {
|
||||
if(CollectionUtil.isEmpty(idsReq.getIds())|| StrUtil.isEmpty(idsReq.getPsnAccount())){
|
||||
return error("参数校验失败");
|
||||
}
|
||||
SealSignRecord sealSignRecordselect = adjudicationService.selectBatchSealUrl(idsReq);
|
||||
return success(sealSignRecordselect);
|
||||
}
|
||||
/**
|
||||
* 根据仲裁员手机号分页查询待签名/待用印的案件
|
||||
*/
|
||||
// @PreAuthorize("@ss.hasPermi('caseManagement:list:selectSignUrl')")
|
||||
@GetMapping("/pageSignAdjudicate")
|
||||
public TableDataInfo pageSignAdjudicate(@RequestParam(value = "personAccount",required = false) String personAccount, @RequestParam("caseStatus") Integer caseStatus) {
|
||||
startPage();
|
||||
List<CaseApplication> list = adjudicationService.selectSealSigning(personAccount,caseStatus);
|
||||
return getDataTable(list);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据批号查询批量用印链接
|
||||
*/
|
||||
@PostMapping("/getSealUrlBatch")
|
||||
public AjaxResult getSealUrlBatch(@RequestBody StringIdsReq idsReq) {
|
||||
if(StrUtil.isEmpty(idsReq.getBatchNumber().toString())|| StrUtil.isEmpty(idsReq.getPsnAccount())){
|
||||
return error("参数校验失败");
|
||||
}
|
||||
SealSignRecord sealSignRecordselect = adjudicationService.getSealUrlBatch(idsReq);
|
||||
return success(sealSignRecordselect);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
@@ -32,8 +96,23 @@ public class AdjudicationController extends BaseController {
|
||||
*/
|
||||
@PostMapping("/document")
|
||||
public AjaxResult createDocument(@Validated @RequestBody CaseApplication caseApplication){
|
||||
if (caseApplication.getId() == null) {
|
||||
return AjaxResult.error("案件id不能为空");
|
||||
}
|
||||
return adjudicationService.createDocument(caseApplication);
|
||||
}
|
||||
/**
|
||||
* 批量生成裁决书
|
||||
* @param caseApplication
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/batchDocument")
|
||||
public AjaxResult batchDocument(@Validated @RequestBody BatchCaseApplication caseApplication){
|
||||
if (CollectionUtil.isEmpty(caseApplication.getIds())) {
|
||||
return AjaxResult.error("参数校验失败");
|
||||
}
|
||||
return adjudicationService.batchDocument(caseApplication.getIds());
|
||||
}
|
||||
|
||||
/**
|
||||
* 重新生成裁决书
|
||||
@@ -78,6 +157,7 @@ public class AdjudicationController extends BaseController {
|
||||
return adjudicationService.signature(caseApplication);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 归档(暂时只改案件状态)
|
||||
* @param batchCaseApplication
|
||||
@@ -92,6 +172,19 @@ public class AdjudicationController extends BaseController {
|
||||
return adjudicationService.caseFile(batchCaseApplication.getIds());
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量归档(暂时只改案件状态)
|
||||
* @param batchCaseApplication
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/caseFileBatch")
|
||||
public AjaxResult caseFileBatch(@RequestBody CaseApplication caseApplication){
|
||||
if(StrUtil.isEmpty(caseApplication.getBatchNumber().toString())){
|
||||
return error("参数校验失败");
|
||||
}
|
||||
return adjudicationService.caseFileBatch(caseApplication.getBatchNumber());
|
||||
}
|
||||
|
||||
/**
|
||||
* 送达(不包含发送电子邮件)
|
||||
* @param bookSendVO
|
||||
@@ -102,6 +195,20 @@ public class AdjudicationController extends BaseController {
|
||||
public AjaxResult service(@RequestBody BookSendVO bookSendVO){
|
||||
return adjudicationService.service(bookSendVO.getId(),bookSendVO.getAppEmail(),bookSendVO.getResEmail(),bookSendVO.getApptrackingNum(),bookSendVO.getRestrackingNum());
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量送达仲裁书
|
||||
* @param caseApplication
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/serviceBatch")
|
||||
public AjaxResult serviceBatch(@Validated @RequestBody CaseApplication caseApplication) throws EsignDemoException, IOException {
|
||||
if(StrUtil.isEmpty(caseApplication.getBatchNumber().toString())){
|
||||
return error("参数校验失败");
|
||||
}
|
||||
return adjudicationService.serviceBatch(caseApplication.getBatchNumber());
|
||||
}
|
||||
|
||||
/**
|
||||
* 用印(暂时只改案件状态)
|
||||
* @param caseApplication
|
||||
|
||||
+54
@@ -0,0 +1,54 @@
|
||||
package com.ruoyi.web.controller.wisdomarbitrate;
|
||||
|
||||
import cn.hutool.json.JSONUtil;
|
||||
import com.ruoyi.common.annotation.Anonymous;
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.AjaxResult;
|
||||
import com.ruoyi.common.utils.CheckSignatuerUtils;
|
||||
import com.ruoyi.wisdomarbitrate.domain.CaseApplication;
|
||||
import com.ruoyi.wisdomarbitrate.domain.vo.CaseApplicationVO;
|
||||
import com.ruoyi.wisdomarbitrate.service.ICaseApplicationService;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
@RestController
|
||||
@RequestMapping("/callArbitrateCaseApplication")
|
||||
public class ArbitrateApplicationController extends BaseController {
|
||||
@Autowired
|
||||
private ICaseApplicationService caseApplicationService;
|
||||
|
||||
|
||||
/**
|
||||
* 新增立案数据
|
||||
*/
|
||||
@Anonymous
|
||||
@PostMapping("/generateCaseApplication")
|
||||
public AjaxResult generateCaseApplication(@Validated @RequestBody CaseApplicationVO caseApplicationVO) throws Exception {
|
||||
String paramsbody = JSONUtil.toJsonStr(caseApplicationVO);
|
||||
boolean checkResult= CheckSignatuerUtils.checkSignuter(paramsbody);
|
||||
if(checkResult){
|
||||
CaseApplication caseApplication = new CaseApplication();
|
||||
BeanUtils.copyProperties(caseApplicationVO,caseApplication);
|
||||
caseApplication.setCreateBy(getUsername());
|
||||
return toAjax(caseApplicationService.insertcaseApplication1(caseApplication));
|
||||
}else {
|
||||
return AjaxResult.error("签名验证失败");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
+139
-13
@@ -2,34 +2,29 @@ package com.ruoyi.web.controller.wisdomarbitrate;
|
||||
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.alipay.api.internal.util.file.IOUtils;
|
||||
import com.ruoyi.common.annotation.Anonymous;
|
||||
import com.ruoyi.common.annotation.Log;
|
||||
import com.ruoyi.common.constant.FileTransformation;
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.AjaxResult;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.enums.BusinessType;
|
||||
import com.ruoyi.common.exception.EsignDemoException;
|
||||
import com.ruoyi.common.exception.ServiceException;
|
||||
import com.ruoyi.common.utils.StringUtils;
|
||||
import com.ruoyi.common.utils.WxAppletNotifyUtils;
|
||||
import com.ruoyi.util.FileUtil;
|
||||
import com.ruoyi.wisdomarbitrate.domain.*;
|
||||
import com.ruoyi.wisdomarbitrate.domain.vo.ReservedConferenceVO;
|
||||
import com.ruoyi.wisdomarbitrate.domain.vo.SendRoomNoMessageVO;
|
||||
import com.ruoyi.wisdomarbitrate.domain.vo.ToDoCount;
|
||||
import com.ruoyi.wisdomarbitrate.service.IAdjudicationService;
|
||||
import com.ruoyi.wisdomarbitrate.service.ICaseApplicationService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.security.access.prepost.PreAuthorize;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import com.ruoyi.common.utils.poi.ExcelUtil;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.io.*;
|
||||
import java.net.URL;
|
||||
import java.net.URLEncoder;
|
||||
import java.util.List;
|
||||
@@ -40,6 +35,8 @@ import java.util.List;
|
||||
public class CaseApplicationController extends BaseController {
|
||||
@Autowired
|
||||
private ICaseApplicationService caseApplicationService;
|
||||
@Autowired
|
||||
private IAdjudicationService adjudicationService;
|
||||
|
||||
|
||||
/**
|
||||
@@ -56,6 +53,16 @@ public class CaseApplicationController extends BaseController {
|
||||
return getDataTable(list);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询批量管理案件列表
|
||||
*/
|
||||
@GetMapping("/listBatch")
|
||||
public TableDataInfo listBatch(CaseApplication caseApplication) {
|
||||
startPage();
|
||||
List<CaseApplication> list = caseApplicationService.selectCaseApplicationListBatchByRole(caseApplication);
|
||||
return getDataTable(list);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据角色查询待办数量
|
||||
* @return
|
||||
@@ -93,6 +100,16 @@ public class CaseApplicationController extends BaseController {
|
||||
return caseApplicationService.editCaseApplication(caseApplication);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改立案数据自定义字段
|
||||
*/
|
||||
// @PreAuthorize("@ss.hasPermi('caseManagement:list:update')")
|
||||
@Log(title = "修改立案数据自定义字段", businessType = BusinessType.UPDATE)
|
||||
@PostMapping("/editCaseApplicationDefineval")
|
||||
public AjaxResult editCaseApplicationDefineval(@Validated @RequestBody CaseApplication caseApplication) {
|
||||
return caseApplicationService.editCaseApplicationDefineval(caseApplication);
|
||||
}
|
||||
|
||||
/**
|
||||
* 提交立案申请
|
||||
*/
|
||||
@@ -106,6 +123,19 @@ public class CaseApplicationController extends BaseController {
|
||||
return toAjax(caseApplicationService.submitCaseApplication(batchCaseApplication.getIds()));
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量提交立案申请
|
||||
*/
|
||||
@Log(title = "批量提交立案申请", businessType = BusinessType.UPDATE)
|
||||
@PostMapping("/submitCaseApplicationBatch")
|
||||
public AjaxResult submitCaseApplicationBatch(@RequestBody BatchCaseApplication batchCaseApplication) {
|
||||
if(StringUtils.isEmpty(batchCaseApplication.getBatchNumber())){
|
||||
return error("参数校验失败");
|
||||
}
|
||||
return toAjax(caseApplicationService.submitCaseApplicationBatch(batchCaseApplication.getBatchNumber()));
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
@@ -161,6 +191,7 @@ public class CaseApplicationController extends BaseController {
|
||||
return success(sealSignRecordselect);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 查询用印链接
|
||||
*/
|
||||
@@ -253,6 +284,25 @@ public class CaseApplicationController extends BaseController {
|
||||
return toAjax(caseApplicationService.pendTralSure(caseApplication));
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量组庭审核
|
||||
*/
|
||||
// @PreAuthorize("@ss.hasPermi('caseManagement:list:checkgroup')")
|
||||
@Log(title = "批量组庭审核", businessType = BusinessType.UPDATE)
|
||||
@PostMapping("/pendTralCheckBatch")
|
||||
public AjaxResult pendTralCheckBatch(@Validated @RequestBody CaseApplication caseApplication) {
|
||||
return toAjax(caseApplicationService.pendTralCheckBatch(caseApplication));
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量组庭确认
|
||||
*/
|
||||
@Log(title = "批量组庭确认", businessType = BusinessType.UPDATE)
|
||||
@PostMapping("/pendTralSureBatch")
|
||||
public AjaxResult pendTralSureBatch(@Validated @RequestBody CaseApplication caseApplication) {
|
||||
return toAjax(caseApplicationService.pendTralSureBatch(caseApplication));
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改开庭时间
|
||||
*/
|
||||
@@ -273,15 +323,54 @@ public class CaseApplicationController extends BaseController {
|
||||
}
|
||||
|
||||
/**
|
||||
* 审核裁决书
|
||||
* 部门长审核裁决书
|
||||
*/
|
||||
// @PreAuthorize("@ss.hasPermi('caseApplication:checkArbitrateRecord')")
|
||||
@Log(title = "审核裁决书", businessType = BusinessType.UPDATE)
|
||||
@Log(title = "部门长审核裁决书", businessType = BusinessType.UPDATE)
|
||||
@PostMapping("/checkArbitrateRecord")
|
||||
public AjaxResult checkArbitrateRecord(@Validated @RequestBody CaseApplication caseApplication) {
|
||||
|
||||
return caseApplicationService.checkArbitrateRecord(caseApplication);
|
||||
}
|
||||
/**
|
||||
* 仲裁员审核裁决书
|
||||
*/
|
||||
// @PreAuthorize("@ss.hasPermi('caseApplication:checkArbitrateRecord')")
|
||||
@Log(title = "仲裁员审核裁决书", businessType = BusinessType.UPDATE)
|
||||
@PostMapping("/arbitrator/checkArbitrateRecord")
|
||||
public AjaxResult arbitratorCheckArbitrateRecord(@Validated @RequestBody CaseApplication caseApplication) {
|
||||
|
||||
return caseApplicationService.arbitratorCheckArbitrateRecord(caseApplication);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量操作仲裁员审核裁决书
|
||||
*/
|
||||
@Log(title = "批量操作仲裁员审核裁决书", businessType = BusinessType.UPDATE)
|
||||
@PostMapping("/arbitrator/checkArbitrateRecordBatch")
|
||||
public AjaxResult arbitratorCheckArbitrateRecordBatch(@Validated @RequestBody CaseApplication caseApplication) {
|
||||
|
||||
return caseApplicationService.arbitratorCheckArbitrateRecordBatch(caseApplication);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量部门长审核裁决书
|
||||
*/
|
||||
@Log(title = "批量部门长审核裁决书", businessType = BusinessType.UPDATE)
|
||||
@PostMapping("/checkArbitrateRecordBatch")
|
||||
public AjaxResult checkArbitrateRecordBatch(@Validated @RequestBody CaseApplication caseApplication) {
|
||||
|
||||
return caseApplicationService.checkArbitrateRecordBatch(caseApplication);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量核验裁决书
|
||||
*/
|
||||
@Log(title = "批量核验裁决书", businessType = BusinessType.UPDATE)
|
||||
@PostMapping("/verificationArbitrateRecordBatch")
|
||||
public AjaxResult verificationArbitrateRecordBatch(@Validated @RequestBody CaseApplication caseApplication) {
|
||||
return toAjax(caseApplicationService.verificationArbitrateRecordBatch(caseApplication));
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
@@ -304,7 +393,7 @@ public class CaseApplicationController extends BaseController {
|
||||
if(CollectionUtil.isEmpty(batchCaseApplication.getIds())|| batchCaseApplication.getAgreeOrNotCheck()==null){
|
||||
return error("参数校验失败");
|
||||
}
|
||||
return success(caseApplicationService.submitCaseApplicationCheck(batchCaseApplication.getIds(),batchCaseApplication.getAgreeOrNotCheck()));
|
||||
return success(caseApplicationService.submitCaseApplicationCheck(batchCaseApplication.getIds(),batchCaseApplication.getAgreeOrNotCheck(),batchCaseApplication.getCaseCheckReject()));
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -317,6 +406,31 @@ public class CaseApplicationController extends BaseController {
|
||||
return success(caseApplicationselect);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量提交立案审查
|
||||
*/
|
||||
@Log(title = "批量提交立案审查", businessType = BusinessType.UPDATE)
|
||||
@PostMapping("/submitCaseApplicationCheckBatch")
|
||||
public AjaxResult submitCaseApplicationCheckBatch(@RequestBody BatchCaseApplication batchCaseApplication) {
|
||||
if(StringUtils.isEmpty(batchCaseApplication.getBatchNumber()) || batchCaseApplication.getAgreeOrNotCheck()==null){
|
||||
return error("参数校验失败");
|
||||
}
|
||||
return success(caseApplicationService.submitCaseApplicationCheckBatch(batchCaseApplication.getBatchNumber(),batchCaseApplication.getAgreeOrNotCheck(),batchCaseApplication.getCaseCheckReject()));
|
||||
}
|
||||
|
||||
/**
|
||||
* 下载案件压缩包
|
||||
*/
|
||||
@PostMapping("/downloadCaseZipFile")
|
||||
public AjaxResult downloadCaseZipFile(@Validated @RequestBody CaseApplication caseApplication) {
|
||||
|
||||
CaseAttach caseAttach = caseApplicationService.downloadCaseZipFile(caseApplication);
|
||||
return success(caseAttach);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 发送房间号短信
|
||||
@@ -347,6 +461,18 @@ public class CaseApplicationController extends BaseController {
|
||||
public AjaxResult creatTrialRecord(@Validated @RequestBody ArbitrateRecord arbitrateRecord){
|
||||
return caseApplicationService.creatTrialRecord(arbitrateRecord);
|
||||
}
|
||||
|
||||
/**
|
||||
* 记录庭审笔录
|
||||
* @param arbitrateRecord
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/creatTrialRecordnew")
|
||||
// @PreAuthorize("@ss.hasPermi('caseManagement:list:creatTrialRecord')")
|
||||
public AjaxResult creatTrialRecordnew(@Validated @RequestBody ArbitrateRecord arbitrateRecord){
|
||||
return caseApplicationService.creatTrialRecordnew(arbitrateRecord);
|
||||
}
|
||||
|
||||
/**
|
||||
* 案件锁定或者解锁
|
||||
* @param caseApplication
|
||||
@@ -435,8 +561,8 @@ public class CaseApplicationController extends BaseController {
|
||||
* @throws IOException
|
||||
*/
|
||||
@PostMapping("/uploadCaseZipFile")
|
||||
public AjaxResult uploadCaseZipFile(@RequestParam("file") MultipartFile file) throws IOException {
|
||||
return caseApplicationService.uploadCaseZipFile(file);
|
||||
public AjaxResult uploadCaseZipFile(@RequestParam("file") MultipartFile file,@RequestParam("templateId") Long templateId) throws IOException {
|
||||
return caseApplicationService.uploadCaseZipFile(file,templateId);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
+22
-2
@@ -30,8 +30,18 @@ public class CaseArbitrateController extends BaseController {
|
||||
@PutMapping("/method")
|
||||
// @PreAuthorize("@ss.hasPermi('caseManagement:list:checkarbitrationway')")
|
||||
public AjaxResult examineArbitrateMethod(@Validated @RequestBody CaseApplication caseApplication
|
||||
, Integer opinion){
|
||||
return caseArbitrateService.examineArbitrateMethod(caseApplication,opinion);
|
||||
, Integer opinion, Integer arbitratMethod){
|
||||
return caseArbitrateService.examineArbitrateMethod(caseApplication,opinion,arbitratMethod);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量审核仲裁方式
|
||||
* @param caseApplication
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/methodBatch")
|
||||
public AjaxResult examineArbitrateMethodBatch(@Validated @RequestBody CaseApplication caseApplication){
|
||||
return caseArbitrateService.examineArbitrateMethodBatch(caseApplication);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -44,4 +54,14 @@ public class CaseArbitrateController extends BaseController {
|
||||
return caseArbitrateService.writtenHear(caseIds);
|
||||
|
||||
}
|
||||
/**
|
||||
* 批量书面审理
|
||||
* @param
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/writtenHearBatch")
|
||||
public AjaxResult writtenHearBatch(@Validated @RequestBody CaseApplication caseApplication){
|
||||
return caseArbitrateService.writtenHearBatch(caseApplication);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
+16
@@ -58,6 +58,22 @@ public class CaseEvidenceController extends BaseController {
|
||||
Long userId = this.getUserId();
|
||||
return caseEvidenceService.uploadEvidence(file, annexType, id, username, userId);
|
||||
}
|
||||
|
||||
/**
|
||||
* 上传庭审笔录
|
||||
*
|
||||
* @param file 附件
|
||||
* @param annexType 附件类型,庭审笔录(7)
|
||||
* @param id 案件申请id
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/uploadRecord")
|
||||
public AjaxResult uploadRecord(@RequestParam("file") MultipartFile file, Integer annexType, Long id) {
|
||||
String username = this.getUsername();
|
||||
Long userId = this.getUserId();
|
||||
return caseEvidenceService.uploadRecord(file, annexType, id, username, userId);
|
||||
}
|
||||
|
||||
@PostMapping("/batchUpload")
|
||||
public AjaxResult batchUpload(@RequestParam("file") MultipartFile[] file, Integer annexType, Long id) {
|
||||
if(file==null){
|
||||
|
||||
+74
@@ -0,0 +1,74 @@
|
||||
package com.ruoyi.web.controller.wisdomarbitrate;
|
||||
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.AjaxResult;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.wisdomarbitrate.domain.CaseNumRule;
|
||||
import com.ruoyi.wisdomarbitrate.domain.TemplateManual;
|
||||
import com.ruoyi.wisdomarbitrate.service.ICaseNumRuleService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@RestController
|
||||
@RequestMapping("/caseNumRule")
|
||||
public class CaseNumRuleController extends BaseController {
|
||||
@Autowired
|
||||
private ICaseNumRuleService caseNumRuleService;
|
||||
|
||||
/**
|
||||
* 新增案件编号规则
|
||||
* @param caseNumRule
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/insertCaseNumRule")
|
||||
public AjaxResult insertCaseNumRule(@RequestBody CaseNumRule caseNumRule){
|
||||
caseNumRule.setCreateBy(getUsername());
|
||||
return caseNumRuleService.insertCaseNumRule(caseNumRule);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 修改案件编号规则
|
||||
* @param caseNumRule
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/updateCaseNumRule")
|
||||
public AjaxResult updateCaseNumRule(@RequestBody CaseNumRule caseNumRule){
|
||||
return caseNumRuleService.updateCaseNumRule(caseNumRule);
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除案件编号规则
|
||||
* @param caseNumRule
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/deleteCaseNumRule")
|
||||
public AjaxResult deleteCaseNumRule(@RequestBody CaseNumRule caseNumRule){
|
||||
return caseNumRuleService.deleteCaseNumRule(caseNumRule);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询案件编号规则
|
||||
*/
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo list(CaseNumRule caseNumRule) {
|
||||
startPage();
|
||||
List<CaseNumRule> list = caseNumRuleService.selectCaseNumRule(caseNumRule);
|
||||
return getDataTable(list);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
+50
-3
@@ -1,6 +1,9 @@
|
||||
package com.ruoyi.web.controller.wisdomarbitrate;
|
||||
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import com.ruoyi.common.core.domain.AjaxResult;
|
||||
import com.ruoyi.common.utils.StringUtils;
|
||||
import com.ruoyi.wisdomarbitrate.domain.BatchCaseApplication;
|
||||
import com.ruoyi.wisdomarbitrate.domain.CaseApplication;
|
||||
import com.ruoyi.wisdomarbitrate.domain.dto.CaseConfirmPayDTO;
|
||||
import com.ruoyi.wisdomarbitrate.service.ICasePaymentService;
|
||||
@@ -9,6 +12,9 @@ import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 缴费支付
|
||||
*/
|
||||
@@ -41,15 +47,38 @@ public class CasePaymentController {
|
||||
return paymentService.confirmPay(payDTO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量缴费
|
||||
* @param casePayDTO 缴费传入参数
|
||||
* @return 统一响应结果
|
||||
*/
|
||||
@PostMapping("/casePayBatch")
|
||||
public AjaxResult casePayBatch(@Validated @RequestBody CasePayDTO casePayDTO) {
|
||||
return paymentService.casePayBatch(casePayDTO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量缴费
|
||||
* @param payDTO 缴费传入参数
|
||||
* @return 统一响应结果
|
||||
*/
|
||||
@PostMapping("/confirmPayBatch")
|
||||
public AjaxResult confirmPayBatch(@Validated @RequestBody CasePayDTO payDTO) {
|
||||
return paymentService.confirmPayBatch(payDTO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 缴费确认
|
||||
* @param caseApplication
|
||||
* @param batchCaseApplication
|
||||
* @return
|
||||
*/
|
||||
// @PreAuthorize("@ss.hasPermi('paymentManagement:list:payconfirm')")
|
||||
@PutMapping("/confirm")
|
||||
public AjaxResult confirmPayment(@Validated @RequestBody CaseApplication caseApplication) {
|
||||
return paymentService.confirmPayment(caseApplication);
|
||||
public AjaxResult confirmPayment(@Validated @RequestBody BatchCaseApplication batchCaseApplication) {
|
||||
if(CollectionUtil.isEmpty(batchCaseApplication.getIds())){
|
||||
return AjaxResult.error("参数校验失败");
|
||||
}
|
||||
return paymentService.confirmPayment(batchCaseApplication.getIds());
|
||||
}
|
||||
/**
|
||||
* 缴费列表查询
|
||||
@@ -60,4 +89,22 @@ public class CasePaymentController {
|
||||
public AjaxResult casePayList(CasePayDTO casePayDTO) {
|
||||
return paymentService.casePayList(casePayDTO);
|
||||
}
|
||||
|
||||
@PostMapping("/listBatch")
|
||||
public AjaxResult casePayListBatch(@Validated @RequestBody CasePayDTO casePayDTO) {
|
||||
return paymentService.casePayListBatch(casePayDTO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量缴费确认
|
||||
* @param batchCaseApplication
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/confirmBatch")
|
||||
public AjaxResult confirmPaymentBatch(@Validated @RequestBody BatchCaseApplication batchCaseApplication) {
|
||||
if(StringUtils.isEmpty(batchCaseApplication.getBatchNumber())){
|
||||
return AjaxResult.error("参数校验失败");
|
||||
}
|
||||
return paymentService.confirmPaymentBatch(batchCaseApplication.getBatchNumber());
|
||||
}
|
||||
}
|
||||
|
||||
+57
@@ -1,4 +1,5 @@
|
||||
package com.ruoyi.web.controller.wisdomarbitrate;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.AjaxResult;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
@@ -177,4 +178,60 @@ public class DeptIdentifyController extends BaseController {
|
||||
public AjaxResult bindHandler(DeptIdentify deptIdentify){
|
||||
return deptIdentifyService.bindHandler(deptIdentify);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据模板id查询抓取规则
|
||||
* @param templateManage
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/getFatchRuleByTemplateid")
|
||||
public AjaxResult getFatchRuleByTemplateid(@RequestBody TemplateManage templateManage){
|
||||
List<FatchRule> fatchRuleList = deptIdentifyService.getFatchRuleByTemplateid(templateManage);
|
||||
return AjaxResult.success(fatchRuleList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存抓取规则
|
||||
* @param templateManage
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/saveFatchRules")
|
||||
public AjaxResult saveFatchRules(@RequestBody TemplateManage templateManage){
|
||||
return deptIdentifyService.saveFatchRules(templateManage);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询column和注释
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/selectColumnandComment")
|
||||
public AjaxResult selectColumnandComment(){
|
||||
List<FatchRule> fatchRuleList = deptIdentifyService.selectColumnandComment();
|
||||
return AjaxResult.success(fatchRuleList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询column
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/selectColumnbycomment")
|
||||
public AjaxResult selectColumnbycomment(@RequestBody FatchRule fatchRule){
|
||||
FatchRule fatchRulesel = deptIdentifyService.selectColumnbycomment(fatchRule);
|
||||
return AjaxResult.success(fatchRulesel);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据模板id查询模板字段列表
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/getTemplateInfoById")
|
||||
public AjaxResult getTemplateInfoById(@RequestParam("id") Long id){
|
||||
TemplateManage templateManage = new TemplateManage();
|
||||
templateManage.setId(id);
|
||||
List<FatchRule> fatchRuleList = deptIdentifyService.getTemplateInfoById(templateManage);
|
||||
return AjaxResult.success(fatchRuleList);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -182,4 +182,16 @@ imConfig:
|
||||
# 腾讯云账户 SecretId
|
||||
secretId: AKID3xfHgroY4MQHvLXUXMwIQL1UjmbBX1Tv
|
||||
# 腾讯云密钥
|
||||
secretKey: INDrIXcT8YmomZBcsy0oNirnU0LTN4X7
|
||||
secretKey: INDrIXcT8YmomZBcsy0oNirnU0LTN4X7
|
||||
#jodconverter:
|
||||
# local:
|
||||
# host: 121.40.189.20
|
||||
#暂时关闭预览,启动时会有点慢
|
||||
# enabled: true
|
||||
#设置libreoffice主目录 linux地址如:/usr/lib64/libreoffice
|
||||
# office-home: /usr/lib64/libreoffice/
|
||||
# office-home: D:\app\libreOffice\
|
||||
#开启多个libreoffice进程,每个端口对应一个进程
|
||||
# port-numbers: 8100
|
||||
#libreoffice进程重启前的最大进程数
|
||||
# max-tasks-per-process: 100
|
||||
|
||||
@@ -11,12 +11,76 @@
|
||||
|
||||
<artifactId>ruoyi-common</artifactId>
|
||||
|
||||
|
||||
<description>
|
||||
common通用工具
|
||||
</description>
|
||||
|
||||
<dependencies>
|
||||
|
||||
<!--docx文件下载问题-->
|
||||
<dependency>
|
||||
<groupId>org.apache.poi</groupId>
|
||||
<artifactId>poi-ooxml</artifactId>
|
||||
<version>4.1.2</version>
|
||||
</dependency>
|
||||
|
||||
<!-- POI依赖,读取.doc型文档-->
|
||||
<!-- https://mvnrepository.com/artifact/org.apache.poi/poi-scratchpad -->
|
||||
<dependency>
|
||||
<groupId>org.apache.poi</groupId>
|
||||
<artifactId>poi-scratchpad</artifactId>
|
||||
<version>4.1.1</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>commons-io</groupId>
|
||||
<artifactId>commons-io</artifactId>
|
||||
<version>2.6</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.jodconverter</groupId>
|
||||
<artifactId>jodconverter-core</artifactId>
|
||||
<version>4.2.0</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.jodconverter</groupId>
|
||||
<artifactId>jodconverter-local</artifactId>
|
||||
<version>4.2.0</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.jodconverter</groupId>
|
||||
<artifactId>jodconverter-spring-boot-starter</artifactId>
|
||||
<version>4.2.0</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.artofsolving</groupId>
|
||||
<artifactId>jodconverter</artifactId>
|
||||
<version>2.2.1</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.openoffice</groupId>
|
||||
<artifactId>jurt</artifactId>
|
||||
<version>3.0.1</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.openoffice</groupId>
|
||||
<artifactId>ridl</artifactId>
|
||||
<version>3.0.1</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.openoffice</groupId>
|
||||
<artifactId>juh</artifactId>
|
||||
<version>3.0.1</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.openoffice</groupId>
|
||||
<artifactId>unoil</artifactId>
|
||||
<version>3.0.1</version>
|
||||
</dependency>
|
||||
|
||||
|
||||
|
||||
<!-- Spring框架基本的核心工具 -->
|
||||
<dependency>
|
||||
<groupId>org.springframework</groupId>
|
||||
|
||||
@@ -30,9 +30,9 @@ public class CaseApplicationConstants {
|
||||
public static final int PENDING_WRIITEN_HEAR = 9;
|
||||
/** 待生成仲裁文书 */
|
||||
public static final int GENERATED_ARBITRATION = 10;
|
||||
/**待核验仲裁文书*/
|
||||
/**待秘书核验仲裁文书*/
|
||||
public static final int VERPRIF_ARBITRATION = 11;
|
||||
/**待审核仲裁文书*/
|
||||
/**待部门长审核仲裁文书*/
|
||||
public static final int CHECK_ARBITRATION = 12;
|
||||
/**待仲裁文书签名*/
|
||||
public static final int SIGN_ARBITRATION = 13;
|
||||
@@ -47,6 +47,8 @@ public class CaseApplicationConstants {
|
||||
|
||||
/** 待修改开庭时间*/
|
||||
public static final int MODIFY_HEARDATE = 31;
|
||||
/**待仲裁员审核仲裁文书*/
|
||||
public static final int HEAD_CHECK_ARBITRATION = 18;
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -28,6 +28,14 @@ public class Constants
|
||||
* http请求
|
||||
*/
|
||||
public static final String HTTP = "http://";
|
||||
/**
|
||||
* br标签
|
||||
*/
|
||||
public static final String BR = "</br>";
|
||||
/**
|
||||
* pdf拼接符
|
||||
*/
|
||||
public static final String PDFSTR = "∰";
|
||||
|
||||
/**
|
||||
* https请求
|
||||
|
||||
@@ -38,6 +38,18 @@ public class SysUser extends BaseEntity
|
||||
/** 用户昵称 */
|
||||
@Excel(name = "用户名称")
|
||||
private String nickName;
|
||||
|
||||
/** 用户昵称和待办数量 */
|
||||
private String nickNameAndNum;
|
||||
|
||||
public String getNickNameAndNum() {
|
||||
return nickNameAndNum;
|
||||
}
|
||||
|
||||
public void setNickNameAndNum(String nickNameAndNum) {
|
||||
this.nickNameAndNum = nickNameAndNum;
|
||||
}
|
||||
|
||||
/** 用户身份证号 */
|
||||
@Excel(name = "身份证号")
|
||||
private String idCard;
|
||||
|
||||
@@ -0,0 +1,58 @@
|
||||
package com.ruoyi.common.utils;
|
||||
|
||||
import cn.hutool.core.io.IoUtil;
|
||||
import cn.hutool.crypto.digest.HMac;
|
||||
import cn.hutool.crypto.digest.HmacAlgorithm;
|
||||
import org.springframework.web.context.request.RequestContextHolder;
|
||||
import org.springframework.web.context.request.ServletRequestAttributes;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import java.io.IOException;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
|
||||
public class CheckSignatuerUtils {
|
||||
|
||||
public static String getSign(String paramsbody, String accessSec, long timestamp) {
|
||||
String paramsStr = getParamsStr(paramsbody, timestamp);
|
||||
return generateSign(paramsStr, accessSec);
|
||||
}
|
||||
|
||||
public static String getParamsStr(String paramsbody,long timestamp) {
|
||||
StringBuilder strbuild = new StringBuilder();
|
||||
if (StringUtils.isNotBlank(paramsbody)) {
|
||||
strbuild.append(paramsbody).append('#');
|
||||
}
|
||||
strbuild.append("#timestamp=").append(timestamp);
|
||||
return strbuild.toString();
|
||||
}
|
||||
|
||||
public static String generateSign(String paramsStr, String accessSec) {
|
||||
HMac hMac = new HMac(HmacAlgorithm.HmacSHA256, accessSec.getBytes(StandardCharsets.UTF_8));
|
||||
return hMac.digestHex(paramsStr);
|
||||
}
|
||||
|
||||
public static boolean checkSignuter(String paramsbody) throws Exception {
|
||||
HttpServletRequest reqParam = ((ServletRequestAttributes) (RequestContextHolder.currentRequestAttributes())).getRequest();
|
||||
String timestampstr = reqParam.getHeader("timestampstr");
|
||||
String signstr = reqParam.getHeader("signstr");
|
||||
String accessSec = "mCFMA6ffe938v79m";
|
||||
String newSignuter = getSign(paramsbody, accessSec,Long.parseLong(timestampstr));
|
||||
if (StringUtils.equals(signstr, newSignuter)) {
|
||||
return true;
|
||||
}else {
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
@@ -1,6 +1,8 @@
|
||||
package com.ruoyi.common.utils;
|
||||
|
||||
|
||||
|
||||
import com.ruoyi.common.utils.uuid.UUID;
|
||||
import lombok.Data;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
@@ -14,18 +16,17 @@ import org.springframework.stereotype.Component;
|
||||
import javax.activation.DataHandler;
|
||||
import javax.mail.*;
|
||||
import javax.mail.internet.*;
|
||||
import javax.mail.search.*;
|
||||
import javax.mail.util.ByteArrayDataSource;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.io.*;
|
||||
import java.nio.file.Files;
|
||||
import java.nio.file.Paths;
|
||||
import java.security.Security;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Properties;
|
||||
import java.util.*;
|
||||
import java.util.regex.Matcher;
|
||||
import java.util.regex.Pattern;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
/**
|
||||
* @ClassName EmailInUtil
|
||||
@@ -48,10 +49,12 @@ public class EmailOutUtil {
|
||||
// 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.username}")
|
||||
// private String usernameOut;
|
||||
private String usernameOut="wq18792927508@163.com";
|
||||
// @Value("${spring.mail.password}")
|
||||
// private String passwordOut;
|
||||
private String passwordOut= "WDFHKSEMCKVRELEA";
|
||||
@Value("${spring.mail.port}")
|
||||
private Integer portOut;
|
||||
|
||||
@@ -98,6 +101,7 @@ public class EmailOutUtil {
|
||||
String messageContent = "<html><body><p style=\"font-family: Arial, sans-serif; font-size: 18px;\">"+message+"。</p></body></html>";
|
||||
MimeBodyPart messageBodyPart = new MimeBodyPart();
|
||||
messageBodyPart.setContent(messageContent, "text/html;charset=utf-8");
|
||||
messageBodyPart.setContentID(UUID.randomUUID().toString());
|
||||
Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());
|
||||
final String SSL_FACTORY = "javax.net.ssl.SSLSocketFactory";
|
||||
//设置邮件会话参数
|
||||
@@ -158,7 +162,7 @@ public class EmailOutUtil {
|
||||
}
|
||||
//调用Transport的send方法去发送邮件
|
||||
Transport.send(msg);
|
||||
} catch (Exception e) {
|
||||
}catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
return Boolean.FALSE;
|
||||
}
|
||||
@@ -269,4 +273,164 @@ public class EmailOutUtil {
|
||||
}
|
||||
return flag;
|
||||
}
|
||||
public void buildReceiveConnect() throws Exception {
|
||||
|
||||
//POP3主机名
|
||||
String host = "pop3.163.com";
|
||||
//设置传输协议
|
||||
String protocol = "pop3";
|
||||
//用户账号
|
||||
String username = "wq18792927508@163.com";
|
||||
//密码或者授权码
|
||||
String password = "WDFHKSEMCKVRELEA";
|
||||
/*
|
||||
* 获取Session
|
||||
*/
|
||||
Properties props = new Properties();
|
||||
//协议
|
||||
props.setProperty("mail.store.protocol", protocol);
|
||||
//POP3主机名
|
||||
props.setProperty("mail.pop3.host", host);
|
||||
props.setProperty("mail.smtp.auth", "true");
|
||||
props.setProperty("mail.pop3.default-encoding", "UTF-8");
|
||||
Session session = Session.getDefaultInstance(props, new Authenticator() {
|
||||
@Override
|
||||
protected PasswordAuthentication getPasswordAuthentication() {
|
||||
return new PasswordAuthentication(usernameOut, passwordOut);
|
||||
}
|
||||
});
|
||||
URLName urlName = new URLName(protocol, host, 110, null, username, password);
|
||||
Store store = session.getStore(urlName);
|
||||
store.connect(username, password);
|
||||
|
||||
|
||||
Folder folder = store.getFolder("INBOX");
|
||||
|
||||
folder.open(Folder.READ_ONLY);
|
||||
|
||||
}
|
||||
/**
|
||||
* 接收邮件
|
||||
*/
|
||||
public List<String> receiverMail() {
|
||||
List<String> messageIds=new ArrayList<>();
|
||||
|
||||
// session.setDebug(true);
|
||||
|
||||
try {
|
||||
//POP3主机名
|
||||
String host = "pop3.163.com";
|
||||
//设置传输协议
|
||||
String protocol = "pop3";
|
||||
//用户账号
|
||||
String username = "wq18792927508@163.com";
|
||||
//密码或者授权码
|
||||
String password = "WDFHKSEMCKVRELEA";
|
||||
/*
|
||||
* 获取Session
|
||||
*/
|
||||
Properties props = new Properties();
|
||||
//协议
|
||||
props.setProperty("mail.store.protocol", protocol);
|
||||
//POP3主机名
|
||||
props.setProperty("mail.pop3.host", host);
|
||||
props.setProperty("mail.smtp.auth", "true");
|
||||
props.setProperty("mail.pop3.default-encoding", "UTF-8");
|
||||
Session session = Session.getDefaultInstance(props, new Authenticator() {
|
||||
@Override
|
||||
protected PasswordAuthentication getPasswordAuthentication() {
|
||||
return new PasswordAuthentication(usernameOut, passwordOut);
|
||||
}
|
||||
});
|
||||
URLName urlName = new URLName(protocol, host, 110, null, username, password);
|
||||
Store store = session.getStore(urlName);
|
||||
store.connect(username, password);
|
||||
|
||||
|
||||
Folder folder = store.getFolder("INBOX");
|
||||
folder.open(Folder.READ_ONLY);
|
||||
SearchTerm orTerm = new SubjectTerm("退信");
|
||||
// Message[] messages = folder.search(orTerm);
|
||||
Date endTime= new Date();
|
||||
long oneDayMillis=24*60*60*1000L;
|
||||
Date startTime=new Date(endTime.getTime()-oneDayMillis);
|
||||
// SearchTerm comparisonTermGe = new SentDateTerm(ComparisonTerm.GE, startTime);
|
||||
// SearchTerm comparisonTermLe = new SentDateTerm(ComparisonTerm.LE, endTime);
|
||||
// SearchTerm comparisonAndTerm = new AndTerm(comparisonTermGe, comparisonTermLe);
|
||||
// SearchTerm searchTerm = new AndTerm(comparisonAndTerm, orTerm);
|
||||
Message[] messages = folder.search(orTerm);
|
||||
if (messages != null) {
|
||||
|
||||
Arrays.stream(messages).forEach(message -> {
|
||||
String messageId="";
|
||||
try {
|
||||
messageId = EmailUtil.getMessageId(message,session);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
messageIds.add(messageId);
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
folder.close(false);
|
||||
store.close();
|
||||
} catch (Exception e) {
|
||||
return messageIds;
|
||||
}
|
||||
return messageIds;
|
||||
}
|
||||
|
||||
public void analyseMail(Session session, Object content) throws Exception {
|
||||
|
||||
if (content instanceof Multipart) {
|
||||
Multipart multipart = (Multipart) content;
|
||||
for (int i = 0; i < multipart.getCount(); i++) {
|
||||
BodyPart bodyPart = multipart.getBodyPart(i);
|
||||
// if (bodyPart.isMimeType("message/rfc822")) { if(bodyPart.getContentType().startsWith("Message/Rfc822"));
|
||||
// MimeMessage mimeMessage = new MimeMessage(session, bodyPart.getInputStream());
|
||||
// }
|
||||
if(bodyPart.isMimeType("Message/Rfc822")){
|
||||
MimeMessage mimeMessage = new MimeMessage(session, bodyPart.getInputStream());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
public static String getMessageId(Part part) throws Exception {
|
||||
if (!part.isMimeType("multipart/*")) {
|
||||
return "";
|
||||
}
|
||||
|
||||
Multipart multipart = (Multipart) part.getContent();
|
||||
for (int i = 0; i < multipart.getCount(); i++) {
|
||||
BodyPart bodyPart = multipart.getBodyPart(i);
|
||||
|
||||
if (part.isMimeType("message/rfc822")) {
|
||||
return getMessageId((Part) part.getContent());
|
||||
}
|
||||
InputStream inputStream = bodyPart.getInputStream();
|
||||
|
||||
try (BufferedReader br = new BufferedReader(new InputStreamReader(inputStream))) {
|
||||
String strLine;
|
||||
while ((strLine = br.readLine()) != null) {
|
||||
if (strLine.startsWith("Message_Id:")) {
|
||||
String[] split = strLine.split("Message_Id:");
|
||||
return split.length > 1 ? split[1].trim() : null;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return "";
|
||||
}
|
||||
|
||||
|
||||
//检查退信邮件
|
||||
// Folder folder = ...; //打开收件箱
|
||||
// Message[] messages = folder.getMessages();
|
||||
// for (Message message : messages) {
|
||||
// if (message.getSubject().contains("Delivery Status Notification")) {
|
||||
// System.out.println("Delivery failed for recipient: " + message.getRecipients()[0]);
|
||||
// }
|
||||
// }
|
||||
}
|
||||
|
||||
@@ -0,0 +1,68 @@
|
||||
package com.ruoyi.common.utils;
|
||||
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
||||
import javax.mail.*;
|
||||
import javax.mail.internet.MimeMessage;
|
||||
import java.io.BufferedReader;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.io.InputStreamReader;
|
||||
|
||||
@Slf4j
|
||||
public final class EmailUtil {
|
||||
|
||||
private static final String multipart = "multipart/*";
|
||||
|
||||
|
||||
|
||||
public static String getMessageId(Part part, Session session) throws Exception {
|
||||
if (!part.isMimeType(multipart)) {
|
||||
return "";
|
||||
|
||||
}
|
||||
|
||||
Multipart multipart = (Multipart) part.getContent();
|
||||
for (int i = 0; i < multipart.getCount(); i++) {
|
||||
BodyPart bodyPart = multipart.getBodyPart(i);
|
||||
if(bodyPart.getContentType().contains("Message/Rfc822")){
|
||||
MimeMessage mimeMessage = new MimeMessage(session, bodyPart.getInputStream());
|
||||
if(mimeMessage.getSubject()!=null&&mimeMessage.getSubject().contains("裁决书")){
|
||||
String[] split = mimeMessage.getSubject().split("裁决书");
|
||||
if(split.length>0){
|
||||
return split[0];
|
||||
}
|
||||
}
|
||||
}
|
||||
} return "";
|
||||
}
|
||||
|
||||
public static boolean isContainAttachment(Part part) {
|
||||
boolean attachFlag = false;
|
||||
try {
|
||||
if (part.isMimeType(multipart)) {
|
||||
Multipart mp = (Multipart) part.getContent();
|
||||
for (int i = 0; i < mp.getCount(); i++) {
|
||||
BodyPart mpart = mp.getBodyPart(i);
|
||||
String disposition = mpart.getDisposition();
|
||||
if ((disposition != null) && ((disposition.equals(Part.ATTACHMENT)) || (disposition.equals(Part.INLINE))))
|
||||
attachFlag = true;
|
||||
else if (mpart.isMimeType(multipart)) {
|
||||
attachFlag = isContainAttachment((Part) mpart);
|
||||
} else {
|
||||
String contype = mpart.getContentType();
|
||||
if (contype.toLowerCase().contains("application"))
|
||||
attachFlag = true;
|
||||
if (contype.toLowerCase().contains("name"))
|
||||
attachFlag = true;
|
||||
}
|
||||
}
|
||||
} else if (part.isMimeType("message/rfc822")) {
|
||||
attachFlag = isContainAttachment((Part) part.getContent());
|
||||
}
|
||||
} catch (MessagingException | IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
return attachFlag;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,57 @@
|
||||
package com.ruoyi.common.utils;
|
||||
|
||||
import java.util.Calendar;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @author wangqiong
|
||||
* @description 根据身份证号提取有效信息
|
||||
* @date 2023-12-11 11:45
|
||||
*/
|
||||
public class IdCardUtils {
|
||||
/**
|
||||
* 通过身份证号码获取出生日期、性别、年龄
|
||||
* @param certificateNo
|
||||
* @return 返回的出生日期格式:1990-01-01 性别格式:1-女,0-男
|
||||
*/
|
||||
public static Map<String, String> getBirAgeSex(String certificateNo) {
|
||||
String birthday = "";
|
||||
String age = "";
|
||||
String sexCode = "";
|
||||
|
||||
int year = Calendar.getInstance().get(Calendar.YEAR);
|
||||
char[] number = certificateNo.toCharArray();
|
||||
boolean flag = true;
|
||||
if (number.length == 15) {
|
||||
for (int x = 0; x < number.length; x++) {
|
||||
if (!flag) return new HashMap<String, String>();
|
||||
flag = Character.isDigit(number[x]);
|
||||
}
|
||||
} else if (number.length == 18) {
|
||||
for (int x = 0; x < number.length - 1; x++) {
|
||||
if (!flag) return new HashMap<String, String>();
|
||||
flag = Character.isDigit(number[x]);
|
||||
}
|
||||
}
|
||||
if (flag && certificateNo.length() == 15) {
|
||||
birthday = "19" + certificateNo.substring(6, 8) + "-"
|
||||
+ certificateNo.substring(8, 10) + "-"
|
||||
+ certificateNo.substring(10, 12);
|
||||
sexCode = Integer.parseInt(certificateNo.substring(certificateNo.length() - 3, certificateNo.length())) % 2 == 0 ? "1" : "0";
|
||||
age = (year - Integer.parseInt("19" + certificateNo.substring(6, 8))) + "";
|
||||
} else if (flag && certificateNo.length() == 18) {
|
||||
birthday = certificateNo.substring(6, 10) + "-"
|
||||
+ certificateNo.substring(10, 12) + "-"
|
||||
+ certificateNo.substring(12, 14);
|
||||
sexCode = Integer.parseInt(certificateNo.substring(certificateNo.length() - 4, certificateNo.length() - 1)) % 2 == 0 ? "1" : "0";
|
||||
age = (year - Integer.parseInt(certificateNo.substring(6, 10))) + "";
|
||||
}
|
||||
Map<String, String> map = new HashMap<String, String>();
|
||||
map.put("birthday", birthday);
|
||||
map.put("age", age);
|
||||
map.put("sexCode", sexCode);
|
||||
return map;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,48 @@
|
||||
package com.ruoyi.common.utils;
|
||||
|
||||
import cn.hutool.core.lang.Snowflake;
|
||||
import cn.hutool.core.util.IdUtil;
|
||||
import com.ruoyi.common.utils.uuid.UUID;
|
||||
|
||||
import java.math.BigInteger;
|
||||
import java.util.Random;
|
||||
|
||||
/**
|
||||
* 雪花算法工具类
|
||||
* zq
|
||||
* @since 2020/10/30 9:59
|
||||
**/
|
||||
public class IdWorkerUtil {
|
||||
private static final long EPOCH = 1479533469598L; //开始时间,固定一个小于当前时间的毫秒数
|
||||
private static final int max12bit = 4095;
|
||||
private static final long max41bit= 1099511627775L;
|
||||
private static String machineId = "" ; // 机器ID
|
||||
|
||||
/**
|
||||
*
|
||||
* 创建ID
|
||||
*
|
||||
* @return
|
||||
*
|
||||
*/
|
||||
public static Long getId(){
|
||||
|
||||
long time = System.currentTimeMillis() - EPOCH + max41bit;
|
||||
// 二进制的 毫秒级时间戳
|
||||
String base = Long.toBinaryString(time);
|
||||
|
||||
// 序列数
|
||||
String randomStr = StringUtils.leftPad(Integer.toBinaryString(new Random().nextInt(max12bit)),12,'0');
|
||||
if(StringUtils.isNotEmpty(machineId)){
|
||||
machineId = StringUtils.leftPad(machineId, 10, '0');
|
||||
}
|
||||
|
||||
//拼接
|
||||
String appendStr = base + machineId + randomStr;
|
||||
// 转化为十进制 返回
|
||||
BigInteger bi = new BigInteger(appendStr, 2);
|
||||
|
||||
return Long.valueOf(bi.toString());
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,53 @@
|
||||
package com.ruoyi.common.utils;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.text.NumberFormat;
|
||||
import java.util.regex.Matcher;
|
||||
import java.util.regex.Pattern;
|
||||
/**
|
||||
* @author wangqiong
|
||||
* @description 金额格式化
|
||||
* @date 2023-12-11 11:45
|
||||
*/
|
||||
public class MoneyFormatUtils {
|
||||
|
||||
/**
|
||||
* 增加千分位
|
||||
* @param money
|
||||
* @return
|
||||
*/
|
||||
public static String moneyFormat(String money) {
|
||||
// 金额格式化
|
||||
try {
|
||||
Double.parseDouble(money);
|
||||
|
||||
} catch (NumberFormatException e) {
|
||||
|
||||
String regEx = "[^0-9]";
|
||||
Pattern p = Pattern.compile(regEx);
|
||||
Matcher m = p.matcher(money);
|
||||
String result = m.replaceAll("").trim();
|
||||
BigDecimal bigDecimal = null;
|
||||
if (money.contains("百")) {
|
||||
bigDecimal = new BigDecimal(result).multiply(new BigDecimal("100"));
|
||||
} else if (money.contains("千")) {
|
||||
bigDecimal = new BigDecimal(result).multiply(new BigDecimal("1000"));
|
||||
} else if (money.contains("万")) {
|
||||
bigDecimal = new BigDecimal(result).multiply(new BigDecimal("10000"));
|
||||
} else if (money.contains("百万")) {
|
||||
bigDecimal = new BigDecimal(result).multiply(new BigDecimal("1000000"));
|
||||
} else if (money.contains("千万")) {
|
||||
bigDecimal = new BigDecimal(result).multiply(new BigDecimal("10000000"));
|
||||
} else if (money.contains("亿")) {
|
||||
bigDecimal = new BigDecimal(result).multiply(new BigDecimal("100000000"));
|
||||
}
|
||||
|
||||
NumberFormat format = NumberFormat.getInstance();
|
||||
return format.format(bigDecimal);
|
||||
|
||||
}
|
||||
return "";
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@@ -1,5 +1,7 @@
|
||||
package com.ruoyi.common.utils;
|
||||
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
|
||||
import java.lang.reflect.Field;
|
||||
|
||||
/**
|
||||
@@ -7,6 +9,9 @@ import java.lang.reflect.Field;
|
||||
*/
|
||||
public class ObjectFieldUtils {
|
||||
public static String getValue(Object obj,String fieldName){
|
||||
if(obj==null || StrUtil.isEmpty(fieldName)){
|
||||
return "";
|
||||
}
|
||||
Field field=null;
|
||||
try{
|
||||
field=obj.getClass().getDeclaredField(fieldName);
|
||||
@@ -28,6 +33,9 @@ public class ObjectFieldUtils {
|
||||
}
|
||||
|
||||
public static void setValue(Object obj,String fieldName,Object value){
|
||||
if(obj==null || StrUtil.isEmpty(fieldName)||value==null){
|
||||
return;
|
||||
}
|
||||
Field field=null;
|
||||
try{
|
||||
field=obj.getClass().getDeclaredField(fieldName);
|
||||
|
||||
@@ -0,0 +1,86 @@
|
||||
package com.ruoyi.common.utils;
|
||||
|
||||
import org.apache.poi.hwpf.extractor.WordExtractor;
|
||||
import org.apache.poi.xwpf.extractor.XWPFWordExtractor;
|
||||
import org.apache.poi.xwpf.usermodel.XWPFDocument;
|
||||
|
||||
import java.io.*;
|
||||
|
||||
/**
|
||||
* @author wangqiong
|
||||
* @description 读取文件内容
|
||||
* @date 2023-12-11 11:45
|
||||
*/
|
||||
public class ReadFileUtils {
|
||||
|
||||
|
||||
public static String readerTxtFile(String filePath){
|
||||
BufferedReader br=null;
|
||||
StringBuilder result=new StringBuilder();
|
||||
try {
|
||||
br = new BufferedReader(new InputStreamReader(new FileInputStream(new File(filePath)),"GBK"));
|
||||
String line=null;
|
||||
while ((line=br.readLine())!=null) {
|
||||
result.append(line).append("\n");
|
||||
}
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
} finally {
|
||||
if (null!=br){
|
||||
try {
|
||||
br.close();
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
return result.toString();
|
||||
}
|
||||
public static String readWord(String filePath) throws Exception{
|
||||
|
||||
File file = new File(filePath);
|
||||
if(file.length()==0) return ""; // 需要操作原因是可能会空文件问题,如果不做处理,在下面读取中会报错
|
||||
StringBuffer sb = new StringBuffer();
|
||||
String buffer = "";
|
||||
try {
|
||||
if (filePath.endsWith(".doc")) {
|
||||
InputStream is = new FileInputStream(file);
|
||||
WordExtractor ex = new WordExtractor(is);
|
||||
buffer = ex.getText();
|
||||
if(buffer.length() > 0){
|
||||
//使用回车换行符分割字符串
|
||||
String [] arry = buffer.split("r\\n");
|
||||
for (String string : arry) {
|
||||
sb.append(string.trim());
|
||||
}
|
||||
}
|
||||
} else if (filePath.endsWith(".docx")) {
|
||||
FileInputStream fis = new FileInputStream(file);
|
||||
XWPFDocument xdoc = new XWPFDocument(fis);
|
||||
XWPFWordExtractor extractor = new XWPFWordExtractor(xdoc);
|
||||
buffer = extractor.getText();
|
||||
sb.append(buffer!=null?buffer:"");
|
||||
|
||||
|
||||
// OPCPackage opcPackage = POIXMLDocument.openPackage(filePath);
|
||||
// XWPFWordExtractor extractor = new XWPFWordExtractor(opcPackage);
|
||||
// buffer = extractor.getText();
|
||||
// if(buffer.length() > 0){
|
||||
// //使用换行符分割字符串
|
||||
// String [] arry = buffer.split("\n");
|
||||
// for (String string : arry) {
|
||||
// sb.append(string.trim());
|
||||
// }
|
||||
// }
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
return sb.toString();
|
||||
} catch (Exception e) {
|
||||
System.out.print("error---->"+filePath);
|
||||
e.printStackTrace();
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -25,7 +25,7 @@ public class SmsUtils {
|
||||
//API的SecretKey
|
||||
private static final String SECRET_KEY = "QjphKo8zkHZigT8j9PVtFPJyfIvO3d6V";
|
||||
//签名内容
|
||||
private static final String SIGN_NAME = "西安云美电子科技有限公司";
|
||||
private static final String SIGN_NAME = "乙巢智慧仲裁网";
|
||||
|
||||
public static Boolean sendSms(SendSmsRequest request) {
|
||||
Credential cred = new Credential(SECRET_ID, SECRET_KEY );
|
||||
@@ -72,6 +72,7 @@ public class SmsUtils {
|
||||
* 模板参数: 模板参数的个数需要与 TemplateId 对应模板的变量个数保持一致,若无模板参数,则设置为空
|
||||
*/
|
||||
private String[] templateParamSet;
|
||||
private Long caseId;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,34 @@
|
||||
package com.ruoyi.common.utils;
|
||||
|
||||
import org.springframework.beans.BeansException;
|
||||
import org.springframework.context.ApplicationContext;
|
||||
import org.springframework.context.ApplicationContextAware;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
/**
|
||||
* @author wangqiong
|
||||
* @description 获取bean工具类
|
||||
* @date 2023-12-11 11:45
|
||||
*/
|
||||
@Component
|
||||
public class SpringUtil implements ApplicationContextAware {
|
||||
private static ApplicationContext applicationContext;
|
||||
@Override
|
||||
public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
|
||||
if(SpringUtil.applicationContext==null){
|
||||
SpringUtil.applicationContext=applicationContext;
|
||||
}
|
||||
}
|
||||
|
||||
public static ApplicationContext getApplicationContext(){
|
||||
return applicationContext;
|
||||
}
|
||||
|
||||
public static <T>T getBean(Class<T> clazz){
|
||||
return getApplicationContext().getBean(clazz);
|
||||
}
|
||||
|
||||
public static <T>T getBean(String name, Class<T> clazz){
|
||||
return getApplicationContext().getBean(name,clazz);
|
||||
}
|
||||
}
|
||||
@@ -288,4 +288,18 @@ public class FileUtils
|
||||
String baseName = FilenameUtils.getBaseName(fileName);
|
||||
return baseName;
|
||||
}
|
||||
/**
|
||||
* 获取文件后缀名
|
||||
* @param file
|
||||
* @return
|
||||
*/
|
||||
public static String getFileExtension(File file) {
|
||||
String name = file.getName();
|
||||
int lastIndexOfDot = name.lastIndexOf(".");
|
||||
if (lastIndexOfDot != -1 && lastIndexOfDot < name.length() - 1) {
|
||||
return name.substring(lastIndexOfDot + 1);
|
||||
} else {
|
||||
return "";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+46
-1
@@ -185,7 +185,52 @@ public class MultipleThreadWorkUtil {
|
||||
mainLatch,threadLatch,rollBack,times);
|
||||
return returnList;
|
||||
}
|
||||
|
||||
public static <R,A>List<R> execListFun(MultipleThreadListParam<R,A> ...params){
|
||||
List<R> returnList=new ArrayList<>();
|
||||
if(ArrayUtil.isEmpty(params)){
|
||||
return returnList;
|
||||
}
|
||||
List<Integer> threadCountList=new ArrayList<>();
|
||||
for (MultipleThreadListParam param : params) {
|
||||
if(param.getList().size()<SIMPLE_TIME_COUNT){
|
||||
threadCountList.add(1);
|
||||
}else{
|
||||
if(param.getList().size()%SIMPLE_TIME_COUNT>0){
|
||||
threadCountList.add(param.getList().size()/SIMPLE_TIME_COUNT+1);
|
||||
}else{
|
||||
threadCountList.add(param.getList().size()/SIMPLE_TIME_COUNT);
|
||||
}
|
||||
}
|
||||
}
|
||||
int times=0;
|
||||
for (Integer count : threadCountList) {
|
||||
times+=count;
|
||||
}
|
||||
CountDownLatch mainLatch=new CountDownLatch(1);
|
||||
//监控子线程
|
||||
CountDownLatch threadLatch=new CountDownLatch(times);
|
||||
//根据子线程执行结果判断是否需要回滚
|
||||
BlockingDeque<Boolean> resultList=new LinkedBlockingDeque<>();
|
||||
//必须使用对象,如果使用变量会造成线程之间不能共享变量值
|
||||
RollBack rollBack=new RollBack(false);
|
||||
ExecutorService executorService=Executors.newFixedThreadPool(times);
|
||||
List<Future<R>> futureList=new ArrayList<>();
|
||||
for (int i = 0; i < params.length; i++) {
|
||||
MultipleThreadListParam param=params[i];
|
||||
for (int j = 0; j <threadCountList.get(i) ; j++) {
|
||||
if(j*SIMPLE_TIME_COUNT+SIMPLE_TIME_COUNT<param.getList().size()){
|
||||
Future<R> future=executorService.submit(new ExecThread(mainLatch,threadLatch,rollBack,resultList,param.getList().subList(j*SIMPLE_TIME_COUNT,j*SIMPLE_TIME_COUNT+SIMPLE_TIME_COUNT),param.getFunction()));
|
||||
futureList.add(future);
|
||||
}else{
|
||||
Future<R> future=executorService.submit(new ExecThread(mainLatch,threadLatch,rollBack,resultList,param.getList().subList(j*SIMPLE_TIME_COUNT,param.getList().size()),param.getFunction()));
|
||||
futureList.add(future);
|
||||
}
|
||||
}
|
||||
}
|
||||
setResult(executorService,returnList,futureList,resultList,
|
||||
mainLatch,threadLatch,rollBack,times);
|
||||
return returnList;
|
||||
}
|
||||
public static <R>List<R> execByIds(Function<String,R> execFun,String ids){
|
||||
List<R> returnList=new ArrayList<>();
|
||||
if(StrUtil.isEmpty(ids)){
|
||||
|
||||
@@ -117,4 +117,11 @@ public interface SysDeptMapper
|
||||
public int deleteDeptById(Long deptId);
|
||||
|
||||
List<Long> selectUserDeptListByRoleId(@Param("roleId")Long roleId);
|
||||
|
||||
/**
|
||||
* 批量新增
|
||||
* @param sysDepts
|
||||
* @return
|
||||
*/
|
||||
int batchSave(@Param("list")List<SysDept> sysDepts);
|
||||
}
|
||||
|
||||
@@ -165,5 +165,10 @@ public interface SysUserMapper
|
||||
|
||||
List<SysUser> selectRoleUserByDeptId(@Param("deptId")Long deptId,@Param("roleId") Long roleId );
|
||||
|
||||
|
||||
/**
|
||||
* 批量新增用户
|
||||
* @param addUsers
|
||||
* @return
|
||||
*/
|
||||
int batchSave(@Param("list")List<SysUser> addUsers);
|
||||
}
|
||||
|
||||
@@ -10,6 +10,7 @@ import com.ruoyi.common.core.domain.AjaxResult;
|
||||
import com.ruoyi.common.core.domain.entity.SysDept;
|
||||
import com.ruoyi.system.mapper.*;
|
||||
import com.ruoyi.wisdomarbitrate.domain.Arbitrator;
|
||||
import com.ruoyi.wisdomarbitrate.mapper.CaseApplicationMapper;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@@ -61,6 +62,9 @@ public class SysUserServiceImpl implements ISysUserService {
|
||||
@Autowired
|
||||
private ISysConfigService configService;
|
||||
|
||||
@Autowired
|
||||
private CaseApplicationMapper caseApplicationMapper;
|
||||
|
||||
@Autowired
|
||||
protected Validator validator;
|
||||
|
||||
@@ -78,7 +82,19 @@ public class SysUserServiceImpl implements ISysUserService {
|
||||
|
||||
@Override
|
||||
public List<SysUser> selectUserListByAdRole(Arbitrator arbitrator) {
|
||||
return userMapper.selectUserListByAdRole(arbitrator);
|
||||
List<SysUser> sysUsers = userMapper.selectUserListByAdRole(arbitrator);
|
||||
if(sysUsers!=null&&sysUsers.size()>0){
|
||||
for(SysUser sysUser: sysUsers){
|
||||
Long userId = sysUser.getUserId();
|
||||
int casenum = caseApplicationMapper.selectCasenum(userId.toString());
|
||||
String nickName = sysUser.getNickName();
|
||||
String nickNamenew = nickName + "(待办案件数量" + casenum + "个)";
|
||||
sysUser.setNickNameAndNum(nickNamenew);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return sysUsers;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -0,0 +1,26 @@
|
||||
package com.ruoyi.wisdomarbitrate;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
public class StringIdsReq {
|
||||
private List<String> ids;
|
||||
/**
|
||||
* 签署人账号(即仲裁员手机号)
|
||||
*/
|
||||
private String psnAccount;
|
||||
/**
|
||||
* 签署人id
|
||||
*/
|
||||
private String psnId ;
|
||||
/**
|
||||
* 机构账户
|
||||
*/
|
||||
private String orgId ;
|
||||
/**
|
||||
* 批号
|
||||
*/
|
||||
private Integer batchNumber;
|
||||
}
|
||||
@@ -25,6 +25,8 @@ public class ArbitrateRecord extends BaseEntity {
|
||||
private String verificaOpinion;
|
||||
/** 审核裁决书意见 */
|
||||
private String checkOpinion;
|
||||
/** 仲裁员审核裁决书意见 */
|
||||
private String arbitraCheckOpinion;
|
||||
/** 裁决书附件id */
|
||||
private Integer annexId;
|
||||
|
||||
@@ -38,6 +40,35 @@ public class ArbitrateRecord extends BaseEntity {
|
||||
private Integer appliIsAbsen;
|
||||
/** 被申请人质证意见 */
|
||||
private String responDefenOpini;
|
||||
/**
|
||||
* 本案争议焦点
|
||||
*/
|
||||
private String caseFocus;
|
||||
/**
|
||||
* 本案事实
|
||||
*/
|
||||
private String caseFacts;
|
||||
/**
|
||||
* 被申请人对上述材料的质证意见
|
||||
*/
|
||||
private String respondentOpinion;
|
||||
/**
|
||||
* 申请人对上述材料的质证意见
|
||||
*/
|
||||
private String applicantOpinion;
|
||||
|
||||
/**
|
||||
* 立案审查驳回原因
|
||||
*/
|
||||
private String caseCheckReject;
|
||||
/**
|
||||
* 仲裁员确认裁决书驳回
|
||||
*/
|
||||
private String arbitrateReject;
|
||||
/**
|
||||
* 部门长确认裁决书驳回
|
||||
*/
|
||||
private String deptorReject;
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -20,4 +20,12 @@ public class BatchCaseApplication {
|
||||
* 1同意,0拒绝
|
||||
*/
|
||||
private Integer opinion;
|
||||
/** 驳回原因 */
|
||||
private String caseCheckReject;
|
||||
/**
|
||||
* 批号
|
||||
*/
|
||||
private String batchNumber;
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -61,6 +61,19 @@ public class CaseAffiliate extends BaseEntity {
|
||||
*/
|
||||
private String changeColumn;
|
||||
|
||||
/**
|
||||
* 代理人邮箱
|
||||
*/
|
||||
private String agentEmail;
|
||||
|
||||
public String getAgentEmail() {
|
||||
return agentEmail;
|
||||
}
|
||||
|
||||
public void setAgentEmail(String agentEmail) {
|
||||
this.agentEmail = agentEmail;
|
||||
}
|
||||
|
||||
public String getChangeColumn() {
|
||||
return changeColumn;
|
||||
}
|
||||
@@ -126,9 +139,6 @@ public class CaseAffiliate extends BaseEntity {
|
||||
this.responSex = responSex;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/** 身份证号 */
|
||||
@Excel(name = "身份证号")
|
||||
private String identityNum;
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -38,6 +38,19 @@ public class CaseLogRecord extends BaseEntity {
|
||||
* 角色名称
|
||||
*/
|
||||
private String roleName;
|
||||
/**
|
||||
* 下一个节点角色名称
|
||||
*/
|
||||
private String nextRoleName;
|
||||
|
||||
public String getNextRoleName() {
|
||||
return nextRoleName;
|
||||
}
|
||||
|
||||
public void setNextRoleName(String nextRoleName) {
|
||||
this.nextRoleName = nextRoleName;
|
||||
}
|
||||
|
||||
/**
|
||||
* 节点名称
|
||||
*/
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
package com.ruoyi.wisdomarbitrate.domain;
|
||||
|
||||
import com.ruoyi.common.annotation.Excel;
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class CaseNumRule extends BaseEntity {
|
||||
/** ID */
|
||||
private Long id;
|
||||
/** 类型 */
|
||||
private Integer ruleType;
|
||||
/** 前缀 */
|
||||
private String prefixstr;
|
||||
/** 时间格式 */
|
||||
private Integer dateFormat;
|
||||
/** 机构名称 */
|
||||
private String deptName;
|
||||
/** 机构名称首字符拼写 */
|
||||
private String deptNameFirchar;
|
||||
/** 当前编号 */
|
||||
private String currentNum;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,41 @@
|
||||
package com.ruoyi.wisdomarbitrate.domain;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.ruoyi.common.annotation.Excel;
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 抓取规则
|
||||
*/
|
||||
@Data
|
||||
public class FatchRule extends BaseEntity {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
private Long id;
|
||||
private String batchNumber;
|
||||
private String fileName;
|
||||
private String startContent;
|
||||
private String endContent;
|
||||
private String column;
|
||||
private String columnName;
|
||||
private Integer isDefault;
|
||||
|
||||
private Long templateId;
|
||||
private String databaseName;
|
||||
/**
|
||||
* 顺序,开始字段重复时,指定抓取第几个
|
||||
*/
|
||||
private Integer startContentRepeatOrder;
|
||||
/**
|
||||
* 结束字段重复时指定的顺序,默认1,只能>0填正整数
|
||||
*/
|
||||
private Integer endContentRepeatOrder;
|
||||
/**
|
||||
* 抓取方向,默认0,0-从前往后抓取,1-从后往前抓取
|
||||
*/
|
||||
private Integer fatchOrder;
|
||||
|
||||
}
|
||||
@@ -1,7 +1,13 @@
|
||||
package com.ruoyi.wisdomarbitrate.domain;
|
||||
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class SealSignRecord extends BaseEntity {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@@ -25,15 +31,6 @@ public class SealSignRecord extends BaseEntity {
|
||||
private String orgnizeNamepsnName;
|
||||
|
||||
String fileDownloadUrl;
|
||||
|
||||
public String getFileDownloadUrl() {
|
||||
return fileDownloadUrl;
|
||||
}
|
||||
|
||||
public void setFileDownloadUrl(String fileDownloadUrl) {
|
||||
this.fileDownloadUrl = fileDownloadUrl;
|
||||
}
|
||||
|
||||
/** 流程状态 */
|
||||
private Integer signFlowStatus;
|
||||
/** 签名状态 */
|
||||
@@ -44,171 +41,11 @@ public class SealSignRecord extends BaseEntity {
|
||||
/** 签名链接 */
|
||||
private String signUrl;
|
||||
|
||||
public String getSignUrl() {
|
||||
return signUrl;
|
||||
}
|
||||
|
||||
public void setSignUrl(String signUrl) {
|
||||
this.signUrl = signUrl;
|
||||
}
|
||||
|
||||
public String getSealUrl() {
|
||||
return sealUrl;
|
||||
}
|
||||
|
||||
public void setSealUrl(String sealUrl) {
|
||||
this.sealUrl = sealUrl;
|
||||
}
|
||||
|
||||
/** 用印链接 */
|
||||
private String sealUrl;
|
||||
|
||||
private Long caseAppliId;
|
||||
|
||||
public Long getCaseAppliId() {
|
||||
return caseAppliId;
|
||||
}
|
||||
|
||||
public void setCaseAppliId(Long caseAppliId) {
|
||||
this.caseAppliId = caseAppliId;
|
||||
}
|
||||
|
||||
public Integer getPsnsignStatus() {
|
||||
return psnsignStatus;
|
||||
}
|
||||
|
||||
public void setPsnsignStatus(Integer psnsignStatus) {
|
||||
this.psnsignStatus = psnsignStatus;
|
||||
}
|
||||
|
||||
public Integer getOrgsignStatus() {
|
||||
return orgsignStatus;
|
||||
}
|
||||
|
||||
public void setOrgsignStatus(Integer orgsignStatus) {
|
||||
this.orgsignStatus = orgsignStatus;
|
||||
}
|
||||
|
||||
public Integer getSignFlowStatus() {
|
||||
return signFlowStatus;
|
||||
}
|
||||
|
||||
public void setSignFlowStatus(Integer signFlowStatus) {
|
||||
this.signFlowStatus = signFlowStatus;
|
||||
}
|
||||
|
||||
public String getFileid() {
|
||||
return fileid;
|
||||
}
|
||||
|
||||
public void setFileid(String fileid) {
|
||||
this.fileid = fileid;
|
||||
}
|
||||
|
||||
public String getFilename() {
|
||||
return filename;
|
||||
}
|
||||
|
||||
public void setFilename(String filename) {
|
||||
this.filename = filename;
|
||||
}
|
||||
|
||||
public String getSignFlowid() {
|
||||
return signFlowid;
|
||||
}
|
||||
|
||||
public void setSignFlowid(String signFlowid) {
|
||||
this.signFlowid = signFlowid;
|
||||
}
|
||||
|
||||
public String getPensonAccount() {
|
||||
return pensonAccount;
|
||||
}
|
||||
|
||||
public void setPensonAccount(String pensonAccount) {
|
||||
this.pensonAccount = pensonAccount;
|
||||
}
|
||||
|
||||
public String getPensonName() {
|
||||
return pensonName;
|
||||
}
|
||||
|
||||
public void setPensonName(String pensonName) {
|
||||
this.pensonName = pensonName;
|
||||
}
|
||||
|
||||
public String getOrgnizeName() {
|
||||
return orgnizeName;
|
||||
}
|
||||
|
||||
public void setOrgnizeName(String orgnizeName) {
|
||||
this.orgnizeName = orgnizeName;
|
||||
}
|
||||
|
||||
public String getOrgnizeNamePsnAccount() {
|
||||
return orgnizeNamePsnAccount;
|
||||
}
|
||||
|
||||
public void setOrgnizeNamePsnAccount(String orgnizeNamePsnAccount) {
|
||||
this.orgnizeNamePsnAccount = orgnizeNamePsnAccount;
|
||||
}
|
||||
|
||||
public String getOrgnizeNamepsnName() {
|
||||
return orgnizeNamepsnName;
|
||||
}
|
||||
|
||||
public void setOrgnizeNamepsnName(String orgnizeNamepsnName) {
|
||||
this.orgnizeNamepsnName = orgnizeNamepsnName;
|
||||
}
|
||||
|
||||
public String getPositionPagepsn() {
|
||||
return positionPagepsn;
|
||||
}
|
||||
|
||||
public void setPositionPagepsn(String positionPagepsn) {
|
||||
this.positionPagepsn = positionPagepsn;
|
||||
}
|
||||
|
||||
public double getPositionXpsn() {
|
||||
return positionXpsn;
|
||||
}
|
||||
|
||||
public void setPositionXpsn(double positionXpsn) {
|
||||
this.positionXpsn = positionXpsn;
|
||||
}
|
||||
|
||||
public double getPositionYpsn() {
|
||||
return positionYpsn;
|
||||
}
|
||||
|
||||
public void setPositionYpsn(double positionYpsn) {
|
||||
this.positionYpsn = positionYpsn;
|
||||
}
|
||||
|
||||
public String getPositionPageorg() {
|
||||
return positionPageorg;
|
||||
}
|
||||
|
||||
public void setPositionPageorg(String positionPageorg) {
|
||||
this.positionPageorg = positionPageorg;
|
||||
}
|
||||
|
||||
public double getPositionXorg() {
|
||||
return positionXorg;
|
||||
}
|
||||
|
||||
public void setPositionXorg(double positionXorg) {
|
||||
this.positionXorg = positionXorg;
|
||||
}
|
||||
|
||||
public double getPositionYorg() {
|
||||
return positionYorg;
|
||||
}
|
||||
|
||||
public void setPositionYorg(double positionYorg) {
|
||||
this.positionYorg = positionYorg;
|
||||
}
|
||||
|
||||
/** 签名位置页数 */
|
||||
private String positionPagepsn;
|
||||
/** 签名位置x坐标 */
|
||||
@@ -223,13 +60,5 @@ public class SealSignRecord extends BaseEntity {
|
||||
private double positionYorg;
|
||||
|
||||
|
||||
public Long getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public void setId(Long id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -3,6 +3,8 @@ package com.ruoyi.wisdomarbitrate.domain;
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
public class TemplateManage extends BaseEntity {
|
||||
private static final long serialVersionUID = 1L;
|
||||
@@ -49,4 +51,7 @@ public class TemplateManage extends BaseEntity {
|
||||
* 机构关联id
|
||||
*/
|
||||
private String identifyName;
|
||||
|
||||
List<FatchRule> fatchRules;
|
||||
|
||||
}
|
||||
|
||||
@@ -25,4 +25,5 @@ public class CaseConfirmPayDTO {
|
||||
* 缴费凭证
|
||||
*/
|
||||
private List<CaseAttach> payOrderList;
|
||||
|
||||
}
|
||||
@@ -38,6 +38,9 @@ public class CaseEvidenceDTO {
|
||||
/** 是否管辖异议申请 */
|
||||
private Integer objectiJuris;
|
||||
|
||||
/** 被申请人是否书面审理 */
|
||||
private Integer respondentIsWrittenHear;
|
||||
|
||||
|
||||
/**
|
||||
* 案件仲裁员
|
||||
|
||||
@@ -35,4 +35,8 @@ public class CasePayDTO {
|
||||
* 缴费凭证
|
||||
*/
|
||||
private List<CaseAttach> payOrderList;
|
||||
/**
|
||||
* 批号
|
||||
*/
|
||||
private String batchNumber;
|
||||
}
|
||||
+419
@@ -0,0 +1,419 @@
|
||||
package com.ruoyi.wisdomarbitrate.domain.vo;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.ruoyi.common.annotation.Excel;
|
||||
import com.ruoyi.wisdomarbitrate.domain.CaseAffiliate;
|
||||
import com.ruoyi.wisdomarbitrate.domain.CaseAttach;
|
||||
import lombok.Data;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
public class CaseApplicationVO {
|
||||
private static final long serialVersionUID = 1L;
|
||||
/**
|
||||
* 查询案件时区分是否待办案件,0待办案件,1已办案件
|
||||
*/
|
||||
private String selectCaseStatus;
|
||||
|
||||
/** ID */
|
||||
private Long id;
|
||||
/** 案件名称 */
|
||||
@Excel(name = "案件名称")
|
||||
private String caseName;
|
||||
/** 案件编号 */
|
||||
// @Excel(name = "案件编号")
|
||||
private String caseNum;
|
||||
/** 案件标的 */
|
||||
@Excel(name = "案件标的")
|
||||
private BigDecimal caseSubjectAmount;
|
||||
/**
|
||||
* 模板id
|
||||
*/
|
||||
private Long templateId;
|
||||
|
||||
|
||||
|
||||
/** 立案日期 */
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date registerDate;
|
||||
/** 仲裁方式 */
|
||||
private Integer arbitratMethod;
|
||||
/**
|
||||
* 是否导入,0手动录入,1导入,默认0
|
||||
*/
|
||||
private Integer importFlag;
|
||||
/** 仲裁方式名称 */
|
||||
private String arbitratMethodName;
|
||||
|
||||
/** 案件状态 */
|
||||
private Integer caseStatus;
|
||||
private String caseStatusstr;
|
||||
|
||||
/** 申请人是否书面审理 */
|
||||
private Integer applicantIsWrittenHear;
|
||||
|
||||
/** 被申请人是否书面审理 */
|
||||
private Integer respondentIsWrittenHear;
|
||||
/** 开庭方式是否一致 */
|
||||
private Integer arbitraMethodIssame;
|
||||
/** 仲裁方式说明 */
|
||||
private String arbitratMethodIllustrate;
|
||||
|
||||
|
||||
/** 案件申请表ID */
|
||||
private Long caseAppliId;
|
||||
|
||||
/** 开庭日期 */
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date hearDate;
|
||||
|
||||
/** 借款开始日期 */
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@Excel(name = "借款开始日期")
|
||||
private Date loanStartDate;
|
||||
/** 借款结束日期 */
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@Excel(name = "借款结束日期")
|
||||
private Date loanEndDate;
|
||||
/** 合同编号 */
|
||||
@Excel(name = "合同编号")
|
||||
private String contractNumber;
|
||||
/** 申请人主张欠本金 */
|
||||
@Excel(name = "申请人主张欠本金")
|
||||
private BigDecimal claimPrinciOwed;
|
||||
/** 申请人主张欠利息 */
|
||||
@Excel(name = "申请人主张欠利息")
|
||||
private BigDecimal claimInterestOwed;
|
||||
/** 申请人主张违约金 */
|
||||
@Excel(name = "申请人主张违约金")
|
||||
private BigDecimal claimLiquidDamag;
|
||||
/** 申请人请求仲裁庭裁决 */
|
||||
@Excel(name = "申请人请求仲裁庭裁决",width = 36)
|
||||
private String requestRule;
|
||||
|
||||
/** 是否财产保全申请 */
|
||||
@Excel(name = "是否财产保全申请",width = 26,combo= {"是","否"},readConverterExp = "0=否,1=是")
|
||||
private Integer properPreser;
|
||||
/** 申请人仲裁请求及事实和理由 */
|
||||
@Excel(name = "申请人仲裁请求及事实和理由",width = 36)
|
||||
private String arbitratClaims;
|
||||
/** 仲裁应缴费用 */
|
||||
private BigDecimal feePayable;
|
||||
|
||||
/** 开始在线视频时间 */
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date beginVideoDate;
|
||||
/** 在线视频人员 */
|
||||
private String onlineVideoPerson;
|
||||
|
||||
/** 仲裁员id */
|
||||
private String arbitratorId;
|
||||
/** 仲裁员名称 */
|
||||
private String arbitratorName;
|
||||
|
||||
/** 案件描述 */
|
||||
private String caseDescribe;
|
||||
/** 裁决书URL */
|
||||
private String filearbitraUrl;
|
||||
|
||||
/** 是否同意组庭 */
|
||||
private Integer isAgreePendTral;
|
||||
|
||||
/** 是否有异议需要举证 */
|
||||
private Integer objectionAddEviden;
|
||||
/** 是否需要开庭审理 */
|
||||
private Integer openCourtHear;
|
||||
|
||||
/** 是否仲裁反请求 */
|
||||
private Integer adjudicaCounter;
|
||||
/**
|
||||
* 仲裁反请求原因
|
||||
*/
|
||||
private String adjudicaCounterReason;
|
||||
|
||||
/** 被申请人是否缺席 */
|
||||
private Integer isAbsence;
|
||||
/** 是否管辖异议申请 */
|
||||
private Integer objectiJuris;
|
||||
/** 被申请人质证意见 */
|
||||
private String responCrossOpin;
|
||||
/** 被申请人的答辩意见 */
|
||||
private String responDefenOpini;
|
||||
/** 申请人是否缺席 */
|
||||
private Integer appliIsAbsen;
|
||||
|
||||
/** 申请人质证意见 */
|
||||
private String applicaCrossOpin;
|
||||
|
||||
/** 支付状态 */
|
||||
private Integer paymentStatus;
|
||||
|
||||
/** 支付状态描述 */
|
||||
private String paymentStatusName;
|
||||
/**
|
||||
* 支付方式code,0线上支付,1线下支付
|
||||
*/
|
||||
private Integer payTypeCode;
|
||||
/**
|
||||
* 支付方式name,0线上支付,1线下支付
|
||||
*/
|
||||
private String payTypeName;
|
||||
|
||||
|
||||
|
||||
// 导入校验失败信息
|
||||
private StringBuilder errorMsg;
|
||||
/**
|
||||
* 是否锁定,0-否,1-是
|
||||
*/
|
||||
private Integer lockStatus;
|
||||
/** 案件状态名称 */
|
||||
private String caseStatusName;
|
||||
/** 是否同意审核 */
|
||||
private Integer agreeOrNotCheck;
|
||||
/** 申请人名称 */
|
||||
private String applicantName;
|
||||
/** 被申请人名称 */
|
||||
private String respondentName;
|
||||
/**
|
||||
* 用户身份证号
|
||||
*/
|
||||
private String idCard;
|
||||
/**
|
||||
* 用户id
|
||||
*/
|
||||
private String userId;
|
||||
/**
|
||||
* 登录用户用户名
|
||||
*/
|
||||
private String loginUserName;
|
||||
private List<Long> deptIds;
|
||||
/**
|
||||
* 部门长状态
|
||||
*/
|
||||
private List<Integer> deptHeadStatus;
|
||||
/**
|
||||
* 代理人角色有关部门
|
||||
*/
|
||||
private List<Long> agentDeptIds;
|
||||
/**
|
||||
* 财务状态
|
||||
*/
|
||||
private Integer financeStatus;
|
||||
/**
|
||||
* 是否是被申请人,仲裁员,部门长,财务,代理人,0-否,1-是
|
||||
*/
|
||||
private Integer isOtherRole;
|
||||
/**
|
||||
* 案件日志id
|
||||
*/
|
||||
private Long caseLogId;
|
||||
/** 仲裁结果 */
|
||||
private String caseResult;
|
||||
|
||||
/** 案件关联人信息 */
|
||||
private List<CaseAffiliate> caseAffiliates;
|
||||
|
||||
|
||||
|
||||
private List<Integer> caseStatusList;
|
||||
|
||||
private List<Integer> annexTypeList;
|
||||
|
||||
private Integer annexType;
|
||||
/**
|
||||
* 案件附件列表
|
||||
*/
|
||||
private List<CaseAttach> caseAttachList;
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 申请人主体信息
|
||||
*/
|
||||
/** 姓名 */
|
||||
@Excel(name = "申请人主体信息-申请人(机构)",width = 26)
|
||||
private String name;
|
||||
/** 身份证号 */
|
||||
@Excel(name = "申请人主体信息-代码",width = 26)
|
||||
private String identityNum;
|
||||
/** 申请人主体信息-法定代表人 */
|
||||
@Excel(name = "申请人主体信息-法定代表人",width = 26)
|
||||
private String compLegalPerson;
|
||||
/** 申请人主体信息-法定代表人 */
|
||||
@Excel(name = "申请人主体信息-法定代表人职位",width = 26)
|
||||
private String compLegalperPost;
|
||||
/**
|
||||
* 申请人主体信息-申请人(机构)id
|
||||
*/
|
||||
private String nameId;
|
||||
|
||||
/** 联系电话 */
|
||||
@Excel(name = "申请人主体信息-联系电话",width = 26)
|
||||
private String contactTelphone;
|
||||
/** 联系地址 */
|
||||
@Excel(name = "申请人主体信息-联系地址",width = 26)
|
||||
private String contactAddress;
|
||||
/** 单位电话 */
|
||||
@Excel(name = "申请人主体信息-单位电话",width = 26)
|
||||
private String workTelphone;
|
||||
/** 单位地址 */
|
||||
@Excel(name = "申请人主体信息-单位地址",width = 26)
|
||||
private String workAddress;
|
||||
|
||||
/** 申请人住所 */
|
||||
@Excel(name = "申请人主体信息-住所",width = 26)
|
||||
private String residenAffiliAppli;
|
||||
|
||||
/** 申请人邮箱 */
|
||||
@Excel(name = "申请人主体信息-邮箱",width = 26)
|
||||
private String email;
|
||||
/** 代理人姓名 */
|
||||
@Excel(name = "申请人主体信息-代理人姓名",width = 26)
|
||||
private String nameAgent;
|
||||
/** 身份证号 */
|
||||
@Excel(name = "申请人主体信息-代理人身份证号",width = 26)
|
||||
private String identityNumAgent;
|
||||
|
||||
/** 联系电话 */
|
||||
@Excel(name = "申请人主体信息-代理人联系电话",width = 26)
|
||||
private String contactTelphoneAgent;
|
||||
/** 联系地址 */
|
||||
@Excel(name = "申请人主体信息-代理人联系地址",width = 26)
|
||||
private String contactAddressAgent;
|
||||
/** 申请人代理人职称 */
|
||||
@Excel(name = "申请人主体信息-代理人职称",width = 26)
|
||||
private String appliAgentTitle;
|
||||
/**
|
||||
* 被申请人主体信息
|
||||
*/
|
||||
/** 姓名 */
|
||||
@Excel(name = "被申请人主体信息-申请人姓名",width = 26)
|
||||
private String debtorName;
|
||||
/** 身份证号 */
|
||||
@Excel(name = "被申请人主体信息-身份证号",width = 26)
|
||||
private String debtorIdentityNum;
|
||||
/** 被申请人主体信息-性别 */
|
||||
@Excel(name = "被申请人主体信息-性别",width = 26,combo= {"男","女"},readConverterExp = "0=男,1=女")
|
||||
private String responSex;
|
||||
/** 被申请人主体信息-出生年月日 */
|
||||
@Excel(name = "被申请人主体信息-出生年月日",width = 26)
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date responBirth;
|
||||
/** 联系电话 */
|
||||
@Excel(name = "被申请人主体信息-联系电话",width = 26)
|
||||
private String debtorContactTelphone;
|
||||
/** 联系地址 */
|
||||
@Excel(name = "被申请人主体信息-联系地址",width = 26)
|
||||
private String debtorContactAddress;
|
||||
/** 被申请人住所 */
|
||||
@Excel(name = "被申请人主体信息-住所",width = 26)
|
||||
private String residenAffiliRespon;
|
||||
/** 单位电话 */
|
||||
@Excel(name = "被申请人主体信息-单位电话",width = 26)
|
||||
private String debtorWorkTelphone;
|
||||
/** 单位地址 */
|
||||
@Excel(name = "被申请人主体信息-单位地址",width = 26)
|
||||
private String debtorWorkAddress;
|
||||
/** 邮箱 */
|
||||
@Excel(name = "被申请人主体信息-邮箱",width = 26)
|
||||
private String debtorEmail;
|
||||
|
||||
/** 代理人姓名 */
|
||||
@Excel(name = "被申请人主体信息-代理人姓名",width = 26)
|
||||
private String debtorNameAgent;
|
||||
/** 身份证号 */
|
||||
@Excel(name = "被申请人主体信息-代理人身份证号",width = 26)
|
||||
private String debtorIdentityNumAgent;
|
||||
/** 联系电话 */
|
||||
@Excel(name = "被申请人主体信息-代理人联系电话",width = 26)
|
||||
private String debtorContactTelphoneAgent;
|
||||
/** 联系地址 */
|
||||
@Excel(name = "被申请人主体信息-代理人联系地址",width = 26)
|
||||
private String debtorContactAddressAgent;
|
||||
/**
|
||||
* 申请机构id
|
||||
*/
|
||||
private String applicationOrganId;
|
||||
/**
|
||||
* 版本号
|
||||
*/
|
||||
private Integer version;
|
||||
/**
|
||||
* 修改案件的提交状态,0-未提交,1-已提交,2-同意,3-拒绝,4-撤销
|
||||
*/
|
||||
private Integer updateSubmitStatus;
|
||||
/** 合同名称 */
|
||||
private String contractName;
|
||||
/**
|
||||
* 事实和理由
|
||||
*/
|
||||
private String facts;
|
||||
/**
|
||||
* 合同甲方
|
||||
*/
|
||||
private String partyA;
|
||||
/**
|
||||
* 利率
|
||||
*/
|
||||
private String interestRate;
|
||||
/**
|
||||
* 待还金额
|
||||
*/
|
||||
private String outstandingMoney;
|
||||
/**
|
||||
* 调解达成协议内容
|
||||
*/
|
||||
private String mediationAgreement;
|
||||
/**
|
||||
* 金融消费纠纷基本情况
|
||||
*/
|
||||
private String disputes;
|
||||
/**
|
||||
* 贷款类型
|
||||
*/
|
||||
private String loanType;
|
||||
/**
|
||||
* 贷款期限
|
||||
*/
|
||||
private String loanTerm;
|
||||
/**
|
||||
* 本案争议焦点
|
||||
*/
|
||||
private String caseFocus;
|
||||
/**
|
||||
* 本案事实
|
||||
*/
|
||||
private String caseFacts;
|
||||
/**
|
||||
* 被申请人对上述材料的质证意见
|
||||
*/
|
||||
private String respondentOpinion;
|
||||
/**
|
||||
* 申请人对上述材料的质证意见
|
||||
*/
|
||||
private String applicantOpinion;
|
||||
/**
|
||||
* 批号
|
||||
*/
|
||||
private Integer batchNumber;
|
||||
|
||||
/**
|
||||
* 待办状态,0待办,1已办
|
||||
*/
|
||||
private Integer pendingStatus;
|
||||
/** e签宝流程id */
|
||||
private String signFlowId;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
@@ -4,14 +4,15 @@ import com.ruoyi.wisdomarbitrate.domain.CaseApplication;
|
||||
import com.ruoyi.wisdomarbitrate.domain.CaseApplicationPay;
|
||||
import lombok.Data;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
public class CasePayListVO {
|
||||
/**
|
||||
* 订单总金额 单位:分
|
||||
* 订单总金额
|
||||
*/
|
||||
private int totalFee;
|
||||
private BigDecimal totalFee;
|
||||
|
||||
/**
|
||||
* 案件总条数
|
||||
|
||||
@@ -0,0 +1,45 @@
|
||||
package com.ruoyi.wisdomarbitrate.domain.vo;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 动态配置字段表
|
||||
*/
|
||||
@Data
|
||||
public class ColumnValue {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* id
|
||||
*/
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 字段,同一个批号,column不可重复
|
||||
*/
|
||||
private String column;
|
||||
|
||||
/**
|
||||
* 字段名
|
||||
*/
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 字段值
|
||||
*/
|
||||
private String value;
|
||||
|
||||
/**
|
||||
* 案件id
|
||||
*/
|
||||
private Long caseId;
|
||||
/**
|
||||
* 是否为自定义字段,0-否,1-是
|
||||
*/
|
||||
private Integer isDefault;
|
||||
/**
|
||||
* 案件日志表id
|
||||
*/
|
||||
private Long caseAppliLogId;
|
||||
|
||||
}
|
||||
@@ -29,6 +29,9 @@ public class CompareCaseVO {
|
||||
* 变化字段,多个用,拼接
|
||||
*/
|
||||
private String changeColumn;
|
||||
|
||||
/**
|
||||
* 自定义字段变化字段,多个用,拼接
|
||||
*/
|
||||
private String columnValueChangeColumn;
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
package com.ruoyi.wisdomarbitrate.domain.vo;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 模板抓取规则关联表
|
||||
*/
|
||||
@Data
|
||||
public class TemplateFatchRule {
|
||||
private static final long serialVersionUID = 1L;
|
||||
private Long id;
|
||||
private Long templateId;
|
||||
private Long fatchRuleId;
|
||||
|
||||
|
||||
|
||||
}
|
||||
@@ -30,4 +30,5 @@ public class ToDoCount {
|
||||
private int caseApplyStored=0; // 待案件归档
|
||||
private int caseApplyArchived=0; // 已归档
|
||||
private int updateOnlineHearDate=0; // 待修改开庭时间
|
||||
private int arbitratorApplyAwardConfirm=0; // 待仲裁员审核仲裁文书
|
||||
}
|
||||
|
||||
+10
-1
@@ -38,10 +38,19 @@ public interface CaseApplicationLogMapper {
|
||||
Integer selectMaxVersionBySecret(@Param("caseAppliId")Long id);
|
||||
|
||||
/**
|
||||
* 根据案件id删除案件记录表和案件关联人日志表
|
||||
* 删除日志
|
||||
* @param ids
|
||||
*/
|
||||
void batchDeleteLog(@Param("ids") List<Long> ids);
|
||||
|
||||
CaseApplication selectBeforeCase(@Param("caseId") Long caseId, @Param("version")Integer version);
|
||||
|
||||
Integer batchSave(@Param("list")List<CaseApplication> caseApplications);
|
||||
|
||||
/**
|
||||
* 根据案件id查询所有的日志id
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
List<Long> selectLogsByCaseIds(@Param("ids")List<Long> ids);
|
||||
}
|
||||
|
||||
+17
-9
@@ -118,17 +118,25 @@ public interface CaseApplicationMapper {
|
||||
*/
|
||||
void updateVersionById(@Param("id")Long id, @Param("version")Integer version);
|
||||
|
||||
/**
|
||||
* 查询秘书案件
|
||||
* @param caseApplication
|
||||
* @return
|
||||
*/
|
||||
List<CaseApplication> selectSecretaryCase(CaseApplication caseApplication);
|
||||
|
||||
/**
|
||||
* 查询申请人案件
|
||||
* @param caseApplication
|
||||
* 查询最大批号
|
||||
* @return
|
||||
*/
|
||||
List<CaseApplication> selectApplicationCase(CaseApplication caseApplication);
|
||||
Integer selectBatchNumberLike();
|
||||
|
||||
/**
|
||||
* 批量新增案件
|
||||
* @param caseApplications
|
||||
* @return
|
||||
*/
|
||||
int batchSave(@Param("list")List<CaseApplication> caseApplications);
|
||||
|
||||
int selectCasenum(@Param("userId") String userId);
|
||||
|
||||
List<CaseApplication> selectAdminCaseApplicationListBatch(CaseApplication caseApplication);
|
||||
|
||||
List<CaseApplication> listCaseApplicationByBatchNumber(CaseApplication caseApplication);
|
||||
|
||||
List<CaseApplication> selectAdminCaseApplicationListBatch1(CaseApplication caseApplication);
|
||||
}
|
||||
|
||||
@@ -27,4 +27,5 @@ public interface CaseAttachLogMapper {
|
||||
CaseAttach queryAnnexById(Integer annexId);
|
||||
|
||||
|
||||
Integer batchSave(@Param("list")List<CaseAttach> caseAttaches);
|
||||
}
|
||||
|
||||
@@ -10,6 +10,7 @@ import java.util.List;
|
||||
@Mapper
|
||||
public interface CaseAttachMapper {
|
||||
int save(CaseAttach caseAttach);
|
||||
int batchSave(@Param("list") List<CaseAttach> caseAttach);
|
||||
|
||||
List<CaseAttach> queryAnnexPathByCaseId(Long id);
|
||||
|
||||
@@ -32,4 +33,6 @@ public interface CaseAttachMapper {
|
||||
* @param annexType
|
||||
*/
|
||||
void deleteByCasedIdAndType(@Param("caseAppliId")Long caseAppliId,@Param("annexType") int annexType,@Param("isBatchUpload") int isBatchUpload);
|
||||
|
||||
void deleteCaseAttachByCasedIdAndType(@Param("caseAppliId")Long caseAppliId,@Param("annexType") int annexType);
|
||||
}
|
||||
|
||||
@@ -3,6 +3,7 @@ package com.ruoyi.wisdomarbitrate.mapper;
|
||||
import com.ruoyi.wisdomarbitrate.domain.CaseApplication;
|
||||
import com.ruoyi.wisdomarbitrate.domain.CaseLogRecord;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.List;
|
||||
@@ -13,4 +14,6 @@ public interface CaseLogRecordMapper {
|
||||
List<CaseLogRecord> selectCaseLogRecordList(CaseLogRecord caseLogRecord);
|
||||
|
||||
int insertCaseLogRecord(CaseLogRecord caseLogRecord);
|
||||
|
||||
void batchInsertRecord(@Param("list")List<CaseLogRecord> list);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,20 @@
|
||||
package com.ruoyi.wisdomarbitrate.mapper;
|
||||
|
||||
import com.ruoyi.wisdomarbitrate.domain.CaseNumRule;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface CaseNumRuleMapper {
|
||||
int insertCaseNumRule(CaseNumRule caseNumRule);
|
||||
|
||||
|
||||
int updateCaseNumRule(CaseNumRule caseNumRule);
|
||||
|
||||
int deleteCaseNumRule(CaseNumRule caseNumRule);
|
||||
|
||||
List<CaseNumRule> selectCaseNumRules(CaseNumRule caseNumRule);
|
||||
|
||||
int countCaseNumRule(CaseNumRule caseNumRule);
|
||||
|
||||
CaseNumRule selectCaseNumRule(CaseNumRule caseNumRule);
|
||||
}
|
||||
+3
-1
@@ -2,10 +2,12 @@ package com.ruoyi.wisdomarbitrate.mapper;
|
||||
|
||||
import com.ruoyi.wisdomarbitrate.domain.CasePaymentRecord;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface CasePaymentRecordMapper {
|
||||
int saveRecord(CasePaymentRecord casePaymentRecord);
|
||||
|
||||
CasePaymentRecord queryRecord(String orderNumber);
|
||||
List<CasePaymentRecord> queryRecord(String orderNumber);
|
||||
|
||||
void update(CasePaymentRecord casePaymentRecord);
|
||||
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
package com.ruoyi.wisdomarbitrate.mapper;
|
||||
|
||||
import com.ruoyi.wisdomarbitrate.domain.vo.ColumnValue;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 动态配置字段表
|
||||
*/
|
||||
@Repository
|
||||
public interface ColumnValueLogMapper {
|
||||
|
||||
/**
|
||||
* 批量新增
|
||||
*/
|
||||
int batchSave(@Param("list") List<ColumnValue> list);
|
||||
void batchUpdate(@Param("list") List<ColumnValue> list);
|
||||
|
||||
/**
|
||||
* 根据案件id查询字段及值
|
||||
* @param caseAppliLogId
|
||||
* @return
|
||||
*/
|
||||
List<ColumnValue> listBycaseAppliLogId(@Param("caseAppliLogId") Long caseAppliLogId);
|
||||
|
||||
List<ColumnValue> queryColumnValueList(ColumnValue columnValue);
|
||||
}
|
||||
@@ -0,0 +1,37 @@
|
||||
package com.ruoyi.wisdomarbitrate.mapper;
|
||||
|
||||
import com.ruoyi.wisdomarbitrate.domain.CaseApplication;
|
||||
import com.ruoyi.wisdomarbitrate.domain.FatchRule;
|
||||
import com.ruoyi.wisdomarbitrate.domain.vo.ColumnValue;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 动态配置字段表
|
||||
*/
|
||||
@Repository
|
||||
public interface ColumnValueMapper {
|
||||
|
||||
/**
|
||||
* 批量新增
|
||||
*/
|
||||
int batchSave(@Param("list") List<ColumnValue> list);
|
||||
|
||||
/**
|
||||
* 根据案件id查询字段及值
|
||||
* @param caseId
|
||||
* @return
|
||||
*/
|
||||
List<ColumnValue> listByCaseId(@Param("caseId") Long caseId);
|
||||
|
||||
List<ColumnValue> queryColumnValueList(ColumnValue columnValue);
|
||||
/**
|
||||
* 批量修改
|
||||
*/
|
||||
void batchUpdate(@Param("list") List<ColumnValue> list);
|
||||
|
||||
int updateColumnValue(ColumnValue columnValue);
|
||||
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
package com.ruoyi.wisdomarbitrate.mapper;
|
||||
|
||||
import com.ruoyi.wisdomarbitrate.domain.CaseAffiliate;
|
||||
import com.ruoyi.wisdomarbitrate.domain.CaseApplication;
|
||||
import com.ruoyi.wisdomarbitrate.domain.FatchRule;
|
||||
import com.ruoyi.wisdomarbitrate.domain.TemplateManage;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Repository
|
||||
public interface FatchRuleMapper {
|
||||
|
||||
/**
|
||||
* 根据批次查询
|
||||
*/
|
||||
List<FatchRule> listByTemplateId(@Param("templateId")Long templateId);
|
||||
|
||||
List<FatchRule> selectFatchRuleList(FatchRule fatchRule);
|
||||
|
||||
|
||||
List<FatchRule> selectFatchRuleListIsDefault(FatchRule fatchRule);
|
||||
|
||||
void deletebatchFatchRule(@Param("fatchRuleIds") List<Long> fatchRuleIds);
|
||||
|
||||
int insertFatchRule(FatchRule fatchRule);
|
||||
|
||||
List<FatchRule> selectColumnandComment(FatchRule fatchRuleselect);
|
||||
|
||||
FatchRule selectColumnbycomment(FatchRule fatchRule);
|
||||
}
|
||||
@@ -2,17 +2,33 @@ package com.ruoyi.wisdomarbitrate.mapper;
|
||||
|
||||
|
||||
|
||||
import com.ruoyi.wisdomarbitrate.domain.CaseApplication;
|
||||
import com.ruoyi.wisdomarbitrate.domain.SealSignRecord;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface SealSignRecordMapper {
|
||||
List<SealSignRecord> selectSealSignRecord(SealSignRecord sealSignRecord);
|
||||
|
||||
/**
|
||||
* 查询已签署和签署中的文件
|
||||
* @param sealSignRecord
|
||||
* @return
|
||||
*/
|
||||
List<SealSignRecord> selectSealSignRecordbyStat(SealSignRecord sealSignRecord);
|
||||
|
||||
/**
|
||||
* 差询等待签署,签署中的案件
|
||||
* @param penSonAccount 签署人员
|
||||
* @return
|
||||
*/
|
||||
List<CaseApplication> selectSealSigning(@Param("penSonAccount") String penSonAccount, @Param("caseStatus") Integer caseStatus);
|
||||
|
||||
int updataSealSignRecord(SealSignRecord sealSignRecord);
|
||||
|
||||
|
||||
void insertSealSignRecord(SealSignRecord sealSignRecord);
|
||||
|
||||
List<CaseApplication> selectsignFlow(@Param("batchNumber") Integer batchNumber,@Param("caseStatus") Integer caseStatus);
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ package com.ruoyi.wisdomarbitrate.mapper;
|
||||
|
||||
import com.ruoyi.wisdomarbitrate.domain.SmsSendRecord;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -11,4 +12,11 @@ public interface SmsRecordMapper {
|
||||
int saveSmsSendRecord(SmsSendRecord smsSendRecord);
|
||||
|
||||
List<SmsSendRecord> getSmsSendRecord(SmsSendRecord smsSendRecord);
|
||||
|
||||
/**
|
||||
* 批量新增
|
||||
* @param smsSendRecordList
|
||||
* @return
|
||||
*/
|
||||
int batchSaveSmsSendRecord(@Param("list") List<SmsSendRecord> smsSendRecordList);
|
||||
}
|
||||
|
||||
+19
@@ -0,0 +1,19 @@
|
||||
package com.ruoyi.wisdomarbitrate.mapper;
|
||||
|
||||
|
||||
import com.ruoyi.wisdomarbitrate.domain.vo.TemplateFatchRule;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Mapper
|
||||
public interface TemplateFatchRuleMapper {
|
||||
int selectTemplateFatchRulecount(TemplateFatchRule templateFatchRule);
|
||||
|
||||
|
||||
List<TemplateFatchRule> selectTemplateFatchRuleList(TemplateFatchRule templateFatchRule);
|
||||
|
||||
void deleteTemplateFatchRule(Long id);
|
||||
|
||||
int insertTemplateFatchRule(TemplateFatchRule templateFatchRule);
|
||||
}
|
||||
+35
@@ -1,10 +1,14 @@
|
||||
package com.ruoyi.wisdomarbitrate.service;
|
||||
|
||||
import com.ruoyi.common.core.domain.AjaxResult;
|
||||
import com.ruoyi.common.exception.EsignDemoException;
|
||||
import com.ruoyi.wisdomarbitrate.StringIdsReq;
|
||||
import com.ruoyi.wisdomarbitrate.domain.BatchCaseApplication;
|
||||
import com.ruoyi.wisdomarbitrate.domain.CaseApplication;
|
||||
import com.ruoyi.wisdomarbitrate.domain.SealSignRecord;
|
||||
import com.ruoyi.wisdomarbitrate.domain.vo.LogisticsInfoVO;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.List;
|
||||
|
||||
public interface IAdjudicationService {
|
||||
@@ -32,4 +36,35 @@ public interface IAdjudicationService {
|
||||
* @return
|
||||
*/
|
||||
AjaxResult emailByCaseId(Long id);
|
||||
|
||||
/**
|
||||
* 批量生成裁决书
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
AjaxResult batchDocument(List<Long> ids);
|
||||
|
||||
/**
|
||||
* 根据签署流程id查询批量签名链接
|
||||
* @param idsReq
|
||||
* @return
|
||||
*/
|
||||
SealSignRecord selectBatchSignUrl( StringIdsReq idsReq);
|
||||
|
||||
/**
|
||||
* 根据仲裁员手机号分页查询等待签署,签署中的裁决书
|
||||
* @param personAccount
|
||||
* @return
|
||||
*/
|
||||
List<CaseApplication> selectSealSigning(String personAccount,Integer caseStatus);
|
||||
|
||||
SealSignRecord selectBatchSealUrl(StringIdsReq idsReq);
|
||||
|
||||
SealSignRecord getSignUrlBatch(StringIdsReq idsReq);
|
||||
|
||||
SealSignRecord getSealUrlBatch(StringIdsReq idsReq);
|
||||
|
||||
AjaxResult caseFileBatch(Integer batchNumber);
|
||||
|
||||
AjaxResult serviceBatch(Integer batchNumber) throws EsignDemoException, IOException;
|
||||
}
|
||||
|
||||
+35
-2
@@ -3,6 +3,7 @@ package com.ruoyi.wisdomarbitrate.service;
|
||||
import com.ruoyi.common.core.domain.AjaxResult;
|
||||
import com.ruoyi.common.exception.EsignDemoException;
|
||||
import com.ruoyi.wisdomarbitrate.domain.*;
|
||||
import com.ruoyi.wisdomarbitrate.domain.vo.ColumnValue;
|
||||
import com.ruoyi.wisdomarbitrate.domain.vo.ReservedConferenceVO;
|
||||
import com.ruoyi.wisdomarbitrate.domain.vo.SendRoomNoMessageVO;
|
||||
import com.ruoyi.wisdomarbitrate.domain.vo.ToDoCount;
|
||||
@@ -11,6 +12,7 @@ import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
public interface ICaseApplicationService {
|
||||
List<CaseApplication> selectCaseApplicationList(CaseApplication caseApplication);
|
||||
@@ -19,6 +21,8 @@ public interface ICaseApplicationService {
|
||||
|
||||
int insertcaseApplication(CaseApplication caseApplication);
|
||||
|
||||
int insertcaseApplication1(CaseApplication caseApplication);
|
||||
|
||||
int selectCaseApplicationCount(CaseApplication caseApplication);
|
||||
|
||||
AjaxResult editCaseApplication(CaseApplication caseApplication);
|
||||
@@ -43,7 +47,7 @@ public interface ICaseApplicationService {
|
||||
|
||||
AjaxResult checkArbitrateRecord(CaseApplication caseApplication);
|
||||
|
||||
int submitCaseApplicationCheck(List<Long> ids, Integer agreeOrNotCheck);
|
||||
int submitCaseApplicationCheck(List<Long> ids, Integer agreeOrNotCheck,String caseCheckReject);
|
||||
|
||||
CaseApplication selectCaseApplicationConfirm(CaseApplication caseApplication);
|
||||
|
||||
@@ -112,7 +116,7 @@ public interface ICaseApplicationService {
|
||||
|
||||
AjaxResult deleteRoom( String roomId);
|
||||
|
||||
AjaxResult uploadCaseZipFile(MultipartFile file);
|
||||
AjaxResult uploadCaseZipFile(MultipartFile file,Long templateId);
|
||||
|
||||
/**
|
||||
* 根据附件id修改案件id
|
||||
@@ -120,4 +124,33 @@ public interface ICaseApplicationService {
|
||||
* @return
|
||||
*/
|
||||
AjaxResult updateCaseIdByAnnexId(CaseAttach caseAttach);
|
||||
|
||||
/**
|
||||
* 仲裁员审核裁决书
|
||||
* @param caseApplication
|
||||
* @return
|
||||
*/
|
||||
AjaxResult arbitratorCheckArbitrateRecord(CaseApplication caseApplication);
|
||||
|
||||
AjaxResult creatTrialRecordnew(ArbitrateRecord arbitrateRecord);
|
||||
|
||||
AjaxResult editCaseApplicationDefineval(CaseApplication caseApplication);
|
||||
|
||||
CaseAttach downloadCaseZipFile(CaseApplication caseApplication);
|
||||
|
||||
List<CaseApplication> selectCaseApplicationListBatchByRole(CaseApplication caseApplication);
|
||||
|
||||
int submitCaseApplicationBatch(String batchNumber);
|
||||
|
||||
int submitCaseApplicationCheckBatch(String batchNumber, Integer agreeOrNotCheck, String caseCheckReject);
|
||||
|
||||
int pendTralCheckBatch(CaseApplication caseApplication);
|
||||
|
||||
int pendTralSureBatch(CaseApplication caseApplication);
|
||||
|
||||
int verificationArbitrateRecordBatch(CaseApplication caseApplication);
|
||||
|
||||
AjaxResult arbitratorCheckArbitrateRecordBatch(CaseApplication caseApplication);
|
||||
|
||||
AjaxResult checkArbitrateRecordBatch(CaseApplication caseApplication);
|
||||
}
|
||||
|
||||
+5
-1
@@ -13,5 +13,9 @@ public interface ICaseArbitrateService {
|
||||
|
||||
AjaxResult writtenHear(CaseIds caseIds);
|
||||
|
||||
AjaxResult examineArbitrateMethod(CaseApplication caseApplication, Integer opinion);
|
||||
AjaxResult examineArbitrateMethod(CaseApplication caseApplication, Integer opinion, Integer arbitratMethod);
|
||||
|
||||
AjaxResult examineArbitrateMethodBatch(CaseApplication caseApplication);
|
||||
|
||||
AjaxResult writtenHearBatch(CaseApplication caseApplication);
|
||||
}
|
||||
|
||||
@@ -65,4 +65,6 @@ public interface ICaseEvidenceService {
|
||||
* @return 下拉树结构列表
|
||||
*/
|
||||
List<CaseEvidenceDirectoryVO> buildCaseEvidenceTreeSelect(List<CaseEvidenceDirectory> caseEvidenceDirectorys);
|
||||
|
||||
AjaxResult uploadRecord(MultipartFile file, Integer annexType, Long id, String username, Long userId);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,20 @@
|
||||
package com.ruoyi.wisdomarbitrate.service;
|
||||
|
||||
import com.ruoyi.common.core.domain.AjaxResult;
|
||||
import com.ruoyi.wisdomarbitrate.domain.CaseNumRule;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface ICaseNumRuleService {
|
||||
AjaxResult insertCaseNumRule(CaseNumRule caseNumRule);
|
||||
|
||||
|
||||
AjaxResult updateCaseNumRule(CaseNumRule caseNumRule);
|
||||
|
||||
|
||||
AjaxResult deleteCaseNumRule(CaseNumRule caseNumRule);
|
||||
|
||||
List<CaseNumRule> selectCaseNumRule(CaseNumRule caseNumRule);
|
||||
|
||||
|
||||
}
|
||||
+10
-1
@@ -6,13 +6,15 @@ import com.ruoyi.wisdomarbitrate.domain.CaseApplication;
|
||||
import com.ruoyi.wisdomarbitrate.domain.dto.CaseConfirmPayDTO;
|
||||
import com.ruoyi.wisdomarbitrate.domain.dto.CasePayDTO;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface ICasePaymentService {
|
||||
/**
|
||||
* 案件缴费
|
||||
*/
|
||||
AjaxResult casePay(CasePayDTO casePayDTO);
|
||||
|
||||
AjaxResult confirmPayment(CaseApplication caseApplication);
|
||||
AjaxResult confirmPayment( List<Long> ids);
|
||||
|
||||
/**
|
||||
* 确认缴费
|
||||
@@ -24,4 +26,11 @@ public interface ICasePaymentService {
|
||||
|
||||
AjaxResult casePayList(CasePayDTO casePayDTO);
|
||||
|
||||
AjaxResult confirmPayBatch(CasePayDTO payDTO);
|
||||
|
||||
AjaxResult casePayListBatch(CasePayDTO casePayDTO);
|
||||
|
||||
AjaxResult confirmPaymentBatch(String batchNumber);
|
||||
|
||||
AjaxResult casePayBatch(CasePayDTO casePayDTO);
|
||||
}
|
||||
|
||||
+15
@@ -4,6 +4,7 @@ import com.ruoyi.common.core.domain.AjaxResult;
|
||||
import com.ruoyi.common.core.domain.entity.SysUser;
|
||||
import com.ruoyi.common.exception.EsignDemoException;
|
||||
import com.ruoyi.wisdomarbitrate.domain.DeptIdentify;
|
||||
import com.ruoyi.wisdomarbitrate.domain.FatchRule;
|
||||
import com.ruoyi.wisdomarbitrate.domain.SealManage;
|
||||
import com.ruoyi.wisdomarbitrate.domain.TemplateManage;
|
||||
import com.ruoyi.wisdomarbitrate.domain.vo.SealListVO;
|
||||
@@ -51,4 +52,18 @@ public interface IDeptIdentifyService {
|
||||
|
||||
AjaxResult bindHandler(DeptIdentify deptIdentify);
|
||||
|
||||
List<FatchRule> getFatchRuleByTemplateid(TemplateManage templateManage);
|
||||
|
||||
AjaxResult saveFatchRules(TemplateManage templateManage);
|
||||
|
||||
List<FatchRule> selectColumnandComment();
|
||||
|
||||
FatchRule selectColumnbycomment(FatchRule fatchRule);
|
||||
|
||||
/**
|
||||
* 根据模板id查询模板字段列表
|
||||
* @param templateManage
|
||||
* @return
|
||||
*/
|
||||
List<FatchRule> getTemplateInfoById(TemplateManage templateManage);
|
||||
}
|
||||
|
||||
+1112
-300
File diff suppressed because it is too large
Load Diff
+71
-5
@@ -12,6 +12,7 @@ import com.ruoyi.wisdomarbitrate.domain.CaseAffiliate;
|
||||
import com.ruoyi.wisdomarbitrate.domain.CaseApplication;
|
||||
import com.ruoyi.wisdomarbitrate.domain.CaseAttach;
|
||||
import com.ruoyi.wisdomarbitrate.domain.SmsSendRecord;
|
||||
import com.ruoyi.wisdomarbitrate.domain.vo.ColumnValue;
|
||||
import com.ruoyi.wisdomarbitrate.domain.vo.CompareCaseVO;
|
||||
import com.ruoyi.wisdomarbitrate.domain.vo.UpdateSubmitVO;
|
||||
import com.ruoyi.wisdomarbitrate.mapper.*;
|
||||
@@ -50,9 +51,11 @@ public class CaseApplicationLogServiceImpl implements CaseApplicationLogService
|
||||
private SmsRecordMapper smsRecordMapper;
|
||||
@Autowired
|
||||
private ICaseApplicationService caseApplicationService;
|
||||
@Autowired
|
||||
private ColumnValueLogMapper columnValueLogMapper;
|
||||
// 对比两个版本修改的字段,基本字段对比
|
||||
private static final String[] columns = {"caseName","caseSubjectAmount","loanStartDate", "loanEndDate","contractNumber","claimInterestOwed","claimLiquidDamag",
|
||||
"claimPrinciOwed","arbitratClaims","properPreser","requestRule"};
|
||||
"claimPrinciOwed","arbitratClaims","properPreser","requestRule","facts"};
|
||||
// 人员字段对比
|
||||
private static final String[] affiliateColumns = {"name", "identityNum","contactTelphone","contactAddress","workTelphone","workAddress","email",
|
||||
"nameAgent", "identityNumAgent","contactTelphoneAgent","contactAddressAgent","residenAffili","compLegalPerson",
|
||||
@@ -158,6 +161,16 @@ public class CaseApplicationLogServiceImpl implements CaseApplicationLogService
|
||||
caseAttachMapper.updateCaseAttach(caseAttach);
|
||||
}
|
||||
}
|
||||
// 更新自定义字段表
|
||||
// 根据caseLogId查询自定义字段表
|
||||
List<ColumnValue> columnValueList = columnValueLogMapper.listBycaseAppliLogId(caseApplicationLog.getCaseLogId());
|
||||
if(CollectionUtil.isNotEmpty(columnValueList)){
|
||||
for (ColumnValue columnValue : columnValueList) {
|
||||
columnValue.setCaseAppliLogId(vo.getCaseId());
|
||||
|
||||
}
|
||||
columnValueLogMapper.batchUpdate(columnValueList);
|
||||
}
|
||||
} else {
|
||||
// 拒绝,将日志表改版本的状态改为拒绝
|
||||
vo.setUpdateSubmitStatus(UpdateSubmitStatus.REFUSE.getCode());
|
||||
@@ -231,10 +244,12 @@ public class CaseApplicationLogServiceImpl implements CaseApplicationLogService
|
||||
CaseApplication caseApplication = new CaseApplication();
|
||||
caseApplication.setCaseAppliId(vo.getCaseId());
|
||||
caseApplication.setId(vo.getCaseId());
|
||||
CaseApplication beforeCase= caseApplicationService.selectCaseApplication(caseApplication);
|
||||
CaseApplication beforeCase = caseApplicationService.selectCaseApplication(caseApplication);
|
||||
|
||||
// 查询案件关联人员
|
||||
afterCase.setCaseAffiliates(caseAffiliateLogMapper.selectCaseAffiliate(afterCase.getCaseLogId()));
|
||||
// 查询自定义字段表
|
||||
afterCase.setColumnValues(columnValueLogMapper.listBycaseAppliLogId(afterCase.getCaseLogId()));
|
||||
// 查询附件
|
||||
CaseAttach caseAttach = new CaseAttach();
|
||||
caseAttach.setCaseAppliLogId(beforeCase.getCaseLogId());
|
||||
@@ -242,7 +257,7 @@ public class CaseApplicationLogServiceImpl implements CaseApplicationLogService
|
||||
caseAttachLogMapper.getCaseAttachByCaseIdAndType(caseAttach);
|
||||
caseAttach.setCaseAppliLogId(afterCase.getCaseLogId());
|
||||
List<CaseAttach> afterAttachList = caseAttachLogMapper.getCaseAttachByCaseIdAndType(caseAttach);
|
||||
if(CollectionUtil.isNotEmpty(afterAttachList)){
|
||||
if (CollectionUtil.isNotEmpty(afterAttachList)) {
|
||||
for (CaseAttach attach : afterAttachList) {
|
||||
String annexName = attach.getAnnexName();
|
||||
String prefix = "/profile";
|
||||
@@ -284,9 +299,49 @@ public class CaseApplicationLogServiceImpl implements CaseApplicationLogService
|
||||
|
||||
}
|
||||
// 对比案件人员字段
|
||||
compareAffilate(beforeCase,afterCase);
|
||||
compareAffilate(beforeCase, afterCase);
|
||||
// 对比申请人证据资料
|
||||
compareCaseVO.setChangeColumn(compareApplicantFile(beforeCase,afterCase,changeColumn).toString());
|
||||
compareCaseVO.setChangeColumn(compareApplicantFile(beforeCase, afterCase, changeColumn).toString());
|
||||
// 对比自定义字段
|
||||
//
|
||||
List<ColumnValue> beforeColumnValues = beforeCase.getColumnValues();
|
||||
List<ColumnValue> afterColumnValues = afterCase.getColumnValues();
|
||||
StringBuilder columnValueChange = new StringBuilder();
|
||||
|
||||
if (CollectionUtil.isNotEmpty(beforeColumnValues) && CollectionUtil.isNotEmpty(afterColumnValues)) {
|
||||
Map<String, String> beforeColumnValueMap = beforeColumnValues.stream().collect(Collectors.toMap(ColumnValue::getColumn, ColumnValue::getValue, (n1, n2) -> n2));
|
||||
for (ColumnValue afterColumnValue : afterColumnValues) {
|
||||
// 改变前字段不包含改变后字段
|
||||
if (!beforeColumnValueMap.containsKey(afterColumnValue.getColumn())) {
|
||||
columnValueChange.append(afterColumnValue.getColumn()).append(",");
|
||||
} else {
|
||||
// 都有这个字段,比较内容是否相同
|
||||
// 修改后为空,修改前不为空
|
||||
if (StrUtil.isEmpty(afterColumnValue.getValue()) && StrUtil.isNotEmpty(beforeColumnValueMap.get(afterColumnValue.getColumn()))) {
|
||||
columnValueChange.append(afterColumnValue.getColumn()).append(",");
|
||||
} else if (StrUtil.isNotEmpty(afterColumnValue.getValue()) && StrUtil.isEmpty(beforeColumnValueMap.get(afterColumnValue.getColumn()))) {
|
||||
// 修改前为空,修改后不为空
|
||||
columnValueChange.append(afterColumnValue.getColumn()).append(",");
|
||||
} else if (StrUtil.isNotEmpty(afterColumnValue.getValue()) && StrUtil.isNotEmpty(beforeColumnValueMap.get(afterColumnValue.getColumn()))
|
||||
&& !afterColumnValue.getValue().equals(beforeColumnValueMap.get(afterColumnValue.getColumn()))) {
|
||||
// 修改前不为空,修改后不为空,内容不同
|
||||
columnValueChange.append(afterColumnValue.getColumn()).append(",");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
} else if (CollectionUtil.isEmpty(beforeColumnValues) && CollectionUtil.isNotEmpty(afterColumnValues)) {
|
||||
for (ColumnValue afterColumnValue : afterColumnValues) {
|
||||
columnValueChange.append(afterColumnValue.getColumn()).append(",");
|
||||
}
|
||||
|
||||
} else if (CollectionUtil.isNotEmpty(beforeColumnValues) && CollectionUtil.isEmpty(afterColumnValues)) {
|
||||
for (ColumnValue beforeColumn : beforeColumnValues) {
|
||||
columnValueChange.append(beforeColumn.getColumn()).append(",");
|
||||
}
|
||||
|
||||
}
|
||||
compareCaseVO.setColumnValueChangeColumn(columnValueChange.toString());
|
||||
|
||||
return AjaxResult.success(compareCaseVO);
|
||||
}
|
||||
@@ -442,5 +497,16 @@ public class CaseApplicationLogServiceImpl implements CaseApplicationLogService
|
||||
caseAttachMapper.updateCaseAttach(caseAttach);
|
||||
}
|
||||
}
|
||||
// 根据caseLogId查询自定义字段表
|
||||
List<ColumnValue> columnValueList = columnValueLogMapper.listBycaseAppliLogId(caseApplicationLog.getCaseLogId());
|
||||
|
||||
// 更新相关人员主表
|
||||
if(CollectionUtil.isNotEmpty(columnValueList)){
|
||||
for (ColumnValue columnValue : columnValueList) {
|
||||
columnValue.setCaseAppliLogId(vo.getCaseId());
|
||||
|
||||
}
|
||||
columnValueLogMapper.batchUpdate(columnValueList);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+1419
-670
File diff suppressed because it is too large
Load Diff
+148
-13
@@ -5,6 +5,7 @@ import com.deepoove.poi.data.PictureRenderData;
|
||||
import com.ruoyi.common.constant.CaseApplicationConstants;
|
||||
import com.ruoyi.common.core.domain.AjaxResult;
|
||||
import com.ruoyi.common.core.redis.RedisCache;
|
||||
import com.ruoyi.common.exception.ServiceException;
|
||||
import com.ruoyi.common.utils.WordUtil;
|
||||
import com.ruoyi.wisdomarbitrate.domain.*;
|
||||
import com.ruoyi.wisdomarbitrate.mapper.*;
|
||||
@@ -58,19 +59,17 @@ public class CaseArbitrateServiceImpl implements ICaseArbitrateService {
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public AjaxResult examineArbitrateMethod(CaseApplication caseApplication, Integer opinion) {
|
||||
public AjaxResult examineArbitrateMethod(CaseApplication caseApplication, Integer opinion, Integer arbitratMethodNow) {
|
||||
//查询案件详细信息
|
||||
CaseApplication caseApplication1 = caseApplicationMapper.selectCaseApplication(caseApplication);
|
||||
if (caseApplication1 == null) {
|
||||
return AjaxResult.success();
|
||||
}
|
||||
Integer arbitratMethod = caseApplication1.getArbitratMethod();
|
||||
if (arbitratMethod == null) {
|
||||
return AjaxResult.error("请先指定仲裁方式");
|
||||
}
|
||||
Integer arbitratMethodOriral = caseApplication.getArbitratMethod();
|
||||
|
||||
String caseNum = caseApplication1.getCaseNum();
|
||||
if (opinion == 0) { //拒绝
|
||||
if (arbitratMethod == 2) {
|
||||
if (arbitratMethodOriral == 2) {
|
||||
caseApplication1.setArbitratMethod(1); // 更改仲裁方式
|
||||
//修改案件状态修改开庭时间
|
||||
caseApplication1.setCaseStatus(CaseApplicationConstants.MODIFY_HEARDATE);
|
||||
@@ -87,15 +86,35 @@ public class CaseArbitrateServiceImpl implements ICaseArbitrateService {
|
||||
CaseLogUtils.insertCaseLog(caseApplication.getId(), CaseApplicationConstants.PENDING_WRIITEN_HEAR, "");
|
||||
|
||||
}
|
||||
} else {
|
||||
if (arbitratMethod == 2) {
|
||||
} else if (opinion == 1 ) {
|
||||
if (arbitratMethodOriral == 2) {
|
||||
//修改案件状态为待书面审理
|
||||
caseApplication1.setArbitratMethod(2);
|
||||
caseApplication1.setCaseStatus(CaseApplicationConstants.PENDING_WRIITEN_HEAR);
|
||||
// 新增日志
|
||||
CaseLogUtils.insertCaseLog(caseApplication.getId(), CaseApplicationConstants.PENDING_WRIITEN_HEAR, "");
|
||||
|
||||
} else {
|
||||
//修改案件状态为待修改开庭时间
|
||||
caseApplication1.setArbitratMethod(1);
|
||||
caseApplication1.setCaseStatus(CaseApplicationConstants.MODIFY_HEARDATE);
|
||||
//修改案件状态为待修改开庭时间
|
||||
// caseApplication1.setCaseStatus(CaseApplicationConstants.MODIFY_HEARDATE);
|
||||
// 新增日志
|
||||
CaseLogUtils.insertCaseLog(caseApplication.getId(), CaseApplicationConstants.MODIFY_HEARDATE, "");
|
||||
|
||||
}
|
||||
}else if (opinion == 2) {
|
||||
if (arbitratMethodNow == 2) {
|
||||
//修改案件状态为待书面审理
|
||||
caseApplication1.setArbitratMethod(2);
|
||||
caseApplication1.setCaseStatus(CaseApplicationConstants.PENDING_WRIITEN_HEAR);
|
||||
// 新增日志
|
||||
CaseLogUtils.insertCaseLog(caseApplication.getId(), CaseApplicationConstants.PENDING_WRIITEN_HEAR, "");
|
||||
|
||||
} else {
|
||||
//修改案件状态为待修改开庭时间
|
||||
caseApplication1.setArbitratMethod(1);
|
||||
caseApplication1.setCaseStatus(CaseApplicationConstants.MODIFY_HEARDATE);
|
||||
//修改案件状态为待修改开庭时间
|
||||
// caseApplication1.setCaseStatus(CaseApplicationConstants.MODIFY_HEARDATE);
|
||||
@@ -104,6 +123,7 @@ public class CaseArbitrateServiceImpl implements ICaseArbitrateService {
|
||||
|
||||
}
|
||||
}
|
||||
caseApplication1.setLockStatus(1);
|
||||
int i = caseApplicationMapper.submitCaseApplication(caseApplication1);
|
||||
if (i > 0) {
|
||||
String arbitratMethodStr = caseApplication1.getArbitratMethod() == 1 ? "开庭审理" : "书面审理";
|
||||
@@ -145,6 +165,121 @@ public class CaseArbitrateServiceImpl implements ICaseArbitrateService {
|
||||
return AjaxResult.success();
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public AjaxResult examineArbitrateMethodBatch(CaseApplication caseApplication) {
|
||||
CaseApplication caseApplicationsel = new CaseApplication();
|
||||
caseApplicationsel.setBatchNumber(caseApplication.getBatchNumber());
|
||||
caseApplicationsel.setCaseStatus(CaseApplicationConstants.CHECK_ARBITRATION_METHOD);
|
||||
List<CaseApplication> caseApplications1 = caseApplicationMapper.listCaseApplicationByBatchNumber(caseApplicationsel);
|
||||
if (caseApplications1 != null && caseApplications1.size() > 0) {
|
||||
for(CaseApplication caseApplicationse:caseApplications1){
|
||||
String caseNum = caseApplicationse.getCaseNum();
|
||||
Integer arbitratMethod = caseApplication.getArbitratMethod();
|
||||
if (arbitratMethod == 1) {
|
||||
caseApplicationse.setArbitratMethod(1);
|
||||
caseApplicationse.setCaseStatus(CaseApplicationConstants.MODIFY_HEARDATE);
|
||||
// 新增日志
|
||||
CaseLogUtils.insertCaseLog(caseApplication.getId(), CaseApplicationConstants.MODIFY_HEARDATE, "");
|
||||
|
||||
}else if (arbitratMethod == 2) {
|
||||
//修改案件状态为待书面审理
|
||||
caseApplicationse.setArbitratMethod(2);
|
||||
caseApplicationse.setCaseStatus(CaseApplicationConstants.PENDING_WRIITEN_HEAR);
|
||||
// 新增日志
|
||||
CaseLogUtils.insertCaseLog(caseApplication.getId(), CaseApplicationConstants.PENDING_WRIITEN_HEAR, "");
|
||||
|
||||
}
|
||||
int i = caseApplicationMapper.submitCaseApplication(caseApplicationse);
|
||||
|
||||
if (i > 0) {
|
||||
String arbitratMethodStr = caseApplicationse.getArbitratMethod() == 1 ? "开庭审理" : "书面审理";
|
||||
//发送短信通知
|
||||
SmsUtils.SendSmsRequest request = new SmsUtils.SendSmsRequest();
|
||||
|
||||
CaseAffiliate caseAffiliate = new CaseAffiliate();
|
||||
caseAffiliate.setCaseAppliId(caseApplicationse.getId());
|
||||
List<CaseAffiliate> caseAffiliates = caseAffiliateMapper.selectCaseAffiliate(caseAffiliate); //获取案件关联人信息
|
||||
if (caseAffiliates != null && caseAffiliates.size() > 0) {
|
||||
for (CaseAffiliate affiliate : caseAffiliates) {
|
||||
request.setTemplateId("1931000");
|
||||
request.setPhone(affiliate.getContactTelphone());
|
||||
// 这个值,要看你的模板中是否预留了占位符,如果没有则不需要设置
|
||||
// 1931000 尊敬的{1}用户,您的{2}仲裁案件,仲裁方式已确定为{3},请知晓,如非本人操作,请忽略本短信。
|
||||
String name = affiliate.getName();
|
||||
request.setTemplateParamSet(new String[]{name, caseNum, arbitratMethodStr});
|
||||
Boolean aBoolean = SmsUtils.sendSms(request);
|
||||
//保存短信发送记录
|
||||
SmsSendRecord smsSendRecord = new SmsSendRecord();
|
||||
smsSendRecord.setCaseId(caseApplicationse.getId());
|
||||
smsSendRecord.setCaseNum(caseApplicationse.getCaseNum());
|
||||
smsSendRecord.setPhone(request.getPhone());
|
||||
smsSendRecord.setSendTime(new Date());
|
||||
String content = "尊敬的" + name + "用户,您的" + caseNum + "仲裁案件,仲裁方式已确定为" + arbitratMethodStr + ",请知晓,如非本人操作,请忽略本短信。";
|
||||
smsSendRecord.setSendContent(content);
|
||||
smsSendRecord.setCreateBy(getUsername());
|
||||
if (aBoolean){
|
||||
smsSendRecord.setSendStatus(1);
|
||||
}else {
|
||||
smsSendRecord.setSendStatus(0);
|
||||
}
|
||||
smsRecordMapper.saveSmsSendRecord(smsSendRecord);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
}else{
|
||||
throw new ServiceException("这个批号没有批量审核仲裁方式的案件");
|
||||
}
|
||||
|
||||
return AjaxResult.success();
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public AjaxResult writtenHearBatch(CaseApplication caseApplicationparam) {
|
||||
CaseApplication caseApplicationsel = new CaseApplication();
|
||||
caseApplicationsel.setBatchNumber(caseApplicationparam.getBatchNumber());
|
||||
caseApplicationsel.setCaseStatus(CaseApplicationConstants.PENDING_WRIITEN_HEAR);
|
||||
List<CaseApplication> caseApplications1 = caseApplicationMapper.listCaseApplicationByBatchNumber(caseApplicationsel);
|
||||
if (caseApplications1 != null && caseApplications1.size() > 0) {
|
||||
List<Long> ids = caseApplications1.stream().map(CaseApplication::getId).collect(Collectors.toList());
|
||||
for (Long caseId : ids) {
|
||||
//查询案件详情
|
||||
CaseApplication caseApplication = new CaseApplication();
|
||||
caseApplication.setId(caseId);
|
||||
CaseApplication caseApplication1 = caseApplicationMapper.selectCaseApplication(caseApplication);
|
||||
//案件日志表里添加数据
|
||||
CaseLogRecord caseLogRecord = new CaseLogRecord();
|
||||
caseLogRecord.setCaseAppliId(caseApplication1.getId());
|
||||
caseLogRecord.setCaseNode(caseApplication1.getCaseStatus());
|
||||
caseLogRecord.setCreateBy(getUsername());
|
||||
caseLogRecordMapper.insertCaseLogRecord(caseLogRecord);
|
||||
// 新增日志
|
||||
CaseLogUtils.insertCaseLog(caseApplication.getId(), CaseApplicationConstants.VERPRIF_ARBITRATION, "");
|
||||
|
||||
// 生成裁决书
|
||||
CaseApplication application = new CaseApplication();
|
||||
application.setId(caseId);
|
||||
adjudicationService.createDocument(application);
|
||||
//修改案件状态
|
||||
caseApplication1.setCaseStatus(CaseApplicationConstants.VERPRIF_ARBITRATION);
|
||||
int i = caseApplicationMapper.submitCaseApplication(caseApplication1);
|
||||
|
||||
}
|
||||
|
||||
}else{
|
||||
throw new ServiceException("这个批号没有批量书面审理的案件");
|
||||
}
|
||||
return AjaxResult.success();
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public AjaxResult writtenHear(CaseIds caseIds) {
|
||||
@@ -186,14 +321,14 @@ public class CaseArbitrateServiceImpl implements ICaseArbitrateService {
|
||||
CaseLogUtils.insertCaseLog(caseApplication.getId(), CaseApplicationConstants.GENERATED_ARBITRATION, "");
|
||||
}
|
||||
}
|
||||
Boolean aBoolean1 = generateAward(caseId);
|
||||
if (aBoolean1) {
|
||||
// 生成裁决书
|
||||
CaseApplication application = new CaseApplication();
|
||||
application.setId(caseId);
|
||||
adjudicationService.createDocument(application);
|
||||
//修改案件状态
|
||||
caseApplication1.setCaseStatus(CaseApplicationConstants.VERPRIF_ARBITRATION);
|
||||
int i = caseApplicationMapper.submitCaseApplication(caseApplication1);
|
||||
}else {
|
||||
return AjaxResult.error("裁决书生成失败");
|
||||
}
|
||||
|
||||
}
|
||||
return AjaxResult.success("审理成功");
|
||||
}
|
||||
|
||||
+76
-25
@@ -79,22 +79,42 @@ public class CaseEvidenceServiceImpl implements ICaseEvidenceService {
|
||||
//根据案件id查询案件证据材料
|
||||
List<CaseAttach> evidenceMaterialList = caseAttachMapper.queryAnnexPathByCaseId(id);
|
||||
if (evidenceMaterialList != null && evidenceMaterialList.size() > 0) {
|
||||
for (CaseAttach caseAttach : evidenceMaterialList) {
|
||||
//根据附件类型决定返回的路径
|
||||
Integer annexType = caseAttach.getAnnexType();
|
||||
if (annexType != 1){
|
||||
String path = caseAttach.getAnnexName();
|
||||
// for (CaseAttach caseAttach : evidenceMaterialList) {
|
||||
// //根据附件类型决定返回的路径
|
||||
// Integer annexType = caseAttach.getAnnexType();
|
||||
// if (annexType != 1){
|
||||
// String path = caseAttach.getAnnexName();
|
||||
// String prefix = "/profile";
|
||||
// int startIndex = path.indexOf(prefix);
|
||||
// startIndex += prefix.length();
|
||||
// String extractedPath = "/uploadPath" + path.substring(startIndex);
|
||||
// caseAttach.setAnnexPath(extractedPath);
|
||||
// }else {
|
||||
// String annexPath = caseAttach.getAnnexPath();
|
||||
// String result = annexPath.replace("/home/ruoyi", "");
|
||||
// caseAttach.setAnnexPath(result);
|
||||
// }
|
||||
// }
|
||||
|
||||
for (CaseAttach caseAttach : evidenceMaterialList) {
|
||||
String annexName = caseAttach.getAnnexName();
|
||||
String prefix = "/profile";
|
||||
int startIndex = path.indexOf(prefix);
|
||||
startIndex += prefix.length();
|
||||
String extractedPath = "/uploadPath" + path.substring(startIndex);
|
||||
caseAttach.setAnnexPath(extractedPath);
|
||||
}else {
|
||||
String annexPath = caseAttach.getAnnexPath();
|
||||
String result = annexPath.replace("/home/ruoyi", "");
|
||||
caseAttach.setAnnexPath(result);
|
||||
int startIndex = annexName.indexOf(prefix);
|
||||
if(startIndex!=-1) {
|
||||
startIndex += prefix.length();
|
||||
|
||||
String annexPath = "/uploadPath" + annexName.substring(startIndex);
|
||||
caseAttach.setAnnexPath(annexPath);
|
||||
}
|
||||
int startIndexnew = annexName.lastIndexOf("/");
|
||||
if (startIndexnew != -1) {
|
||||
String annexNamenew = annexName.substring(startIndexnew + 1);
|
||||
caseAttach.setAnnexName(annexNamenew);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
caseDetailVO.setEvidenceMaterialList(evidenceMaterialList);
|
||||
}
|
||||
@@ -202,6 +222,7 @@ public class CaseEvidenceServiceImpl implements ICaseEvidenceService {
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public AjaxResult caseCrossexamination(CaseEvidenceDTO caseEvidenceDTO) {
|
||||
//查询案件详细信息
|
||||
CaseApplication caseApplication = new CaseApplication();
|
||||
@@ -211,11 +232,10 @@ public class CaseEvidenceServiceImpl implements ICaseEvidenceService {
|
||||
caseApplication1.setAdjudicaCounterReason(caseEvidenceDTO.getAdjudicaCounterReason());
|
||||
int caseStatus = caseApplication1.getCaseStatus();
|
||||
caseApplication1.setObjectionAddEviden(caseEvidenceDTO.getObjectionAddEviden());
|
||||
//默认书面审理
|
||||
caseApplication1.setOpenCourtHear(0);
|
||||
caseApplication1.setPendingAppointArbotrar(caseEvidenceDTO.getPendingAppointArbotrar());
|
||||
caseApplication1.setAdjudicaCounter(caseEvidenceDTO.getAdjudicaCounter());
|
||||
caseApplication1.setObjectiJuris(caseEvidenceDTO.getObjectiJuris());
|
||||
caseApplication1.setRespondentIsWrittenHear(caseEvidenceDTO.getRespondentIsWrittenHear());
|
||||
List<Arbitrator> arbitrators = caseEvidenceDTO.getArbitrators();
|
||||
if (arbitrators != null && arbitrators.size() > 0) {
|
||||
List<Long> ids = arbitrators.stream().map(Arbitrator::getId).collect(Collectors.toList());
|
||||
@@ -227,15 +247,8 @@ public class CaseEvidenceServiceImpl implements ICaseEvidenceService {
|
||||
}
|
||||
//修改案件状态
|
||||
caseApplication1.setCaseStatus(CaseApplicationConstants.CONFIRMDED_PENDING_TRIAL_SUBMMIT);
|
||||
//选择仲裁方式
|
||||
if (caseEvidenceDTO.getOpenCourtHear() == null){
|
||||
//没选默认书面审理
|
||||
caseApplication1.setArbitratMethod(2); //书面审理
|
||||
}else if (caseEvidenceDTO.getOpenCourtHear() == 1){
|
||||
caseApplication1.setArbitratMethod(1);
|
||||
} else {
|
||||
caseApplication1.setArbitratMethod(2); //书面审理
|
||||
}
|
||||
|
||||
|
||||
int i = caseApplicationMapper.submitCaseApplication(caseApplication1);
|
||||
if (i > 0) {
|
||||
// 新增日志
|
||||
@@ -400,6 +413,44 @@ public class CaseEvidenceServiceImpl implements ICaseEvidenceService {
|
||||
return caseEvidenceDirectories.stream().map(CaseEvidenceDirectoryVO::new).collect(Collectors.toList());
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public AjaxResult uploadRecord(MultipartFile file, Integer annexType, Long id, String username, Long userId) {
|
||||
if (file.isEmpty()) {
|
||||
return AjaxResult.error("请选择要上传的文件");
|
||||
}
|
||||
try {
|
||||
String filePath = RuoYiConfig.getUploadPath();
|
||||
// 上传
|
||||
String fileName = FileUploadUtils.upload(filePath, file);
|
||||
CaseAttach caseAttach = CaseAttach.builder().caseAppliId(id)
|
||||
.annexName(fileName)
|
||||
.annexPath(filePath)
|
||||
.annexType(annexType)
|
||||
.userId(userId)
|
||||
.userName(username)
|
||||
.build();
|
||||
|
||||
CaseApplication caseApplicationsel = new CaseApplication();
|
||||
caseApplicationsel.setId(id);
|
||||
caseApplicationsel.setAnnexType(7);
|
||||
List<CaseAttach> caseAttachs = caseAttachMapper.queryCaseAttachList(caseApplicationsel);
|
||||
if(caseAttachs!=null&&caseAttachs.size()>0){
|
||||
caseAttachMapper.deleteCaseAttachByCasedIdAndType(id,7);
|
||||
int count = caseAttachMapper.save(caseAttach);
|
||||
}else {
|
||||
int count = caseAttachMapper.save(caseAttach);
|
||||
}
|
||||
|
||||
return AjaxResult.success("上传成功");
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
return AjaxResult.error("上传失败");
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 递归列表
|
||||
*/
|
||||
|
||||
+328
@@ -0,0 +1,328 @@
|
||||
package com.ruoyi.wisdomarbitrate.service.impl;
|
||||
|
||||
import cn.hutool.core.util.IdcardUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.ruoyi.common.core.domain.entity.SysUser;
|
||||
import com.ruoyi.common.utils.SpringUtil;
|
||||
import com.ruoyi.system.mapper.SysUserMapper;
|
||||
import com.ruoyi.wisdomarbitrate.domain.CaseApplication;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
import java.util.Map;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
/**
|
||||
* @author wangqiong
|
||||
* @description excel导入校验
|
||||
* @date 2023-12-11 11:45
|
||||
*/
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class CaseImportValid {
|
||||
private CaseApplication caseApplication;
|
||||
private Map<String, Long> deptMap;
|
||||
// 手机号正则
|
||||
private static final Pattern TELEPHONE_REGX = Pattern.compile("^1(3\\d|4[5-9]|5[0-35-9]|6[2567]|7[0-8]|8\\d|9[0-35-9])\\d{8}$");
|
||||
// 邮箱正则
|
||||
private static final Pattern EMAIL_PATTERN = Pattern.compile("^[a-zA-Z0-9_+&*-]+(?:\\.[a-zA-Z0-9_+&*-]+)*@(?:[a-zA-Z0-9-]+\\.)+[a-zA-Z]{2,7}$");
|
||||
private static SysUserMapper sysUserMapper= SpringUtil.getBean(SysUserMapper.class);
|
||||
|
||||
/**
|
||||
* 导入校验
|
||||
*
|
||||
* @param caseApplication
|
||||
* @param
|
||||
*/
|
||||
public void importValid(CaseApplication caseApplication, Map<String, Long> deptMap) {
|
||||
StringBuilder failureMsg = new StringBuilder();
|
||||
caseApplication.setErrorMsg(failureMsg);
|
||||
// 校验基本字段
|
||||
validBaseColumn(caseApplication, failureMsg);
|
||||
// 校验申请人信息
|
||||
validApplicationColumn(caseApplication, failureMsg);
|
||||
// 校验申请人代理信息
|
||||
validApplicationAgentColumn(caseApplication, failureMsg, deptMap);
|
||||
// 校验被申请人信息
|
||||
validDebtorApplicationColumn(caseApplication, failureMsg);
|
||||
// 校验被申请人代理信息
|
||||
validDebtorApplicationAgentColumn(caseApplication, failureMsg);
|
||||
}
|
||||
|
||||
/**
|
||||
* 校验被申请人代理信息
|
||||
*
|
||||
* @param caseApplication
|
||||
* @param failureMsg
|
||||
*/
|
||||
private void validDebtorApplicationAgentColumn(CaseApplication caseApplication, StringBuilder failureMsg) {
|
||||
if (StrUtil.isEmpty(caseApplication.getDebtorNameAgent())) {
|
||||
failureMsg.append("【被申请人主体信息-代理人姓名】字段不能为空;");
|
||||
} else if (caseApplication.getDebtorNameAgent().length() > 50) {
|
||||
failureMsg.append("【被申请人主体信息-代理人姓名】字段超出指定长度,最大长度为50;");
|
||||
}
|
||||
if (StrUtil.isEmpty(caseApplication.getDebtorIdentityNumAgent())) {
|
||||
failureMsg.append("【被申请人主体信息-代理人身份证号】字段不能为空;");
|
||||
} else if (!IdcardUtil.isValidCard((caseApplication.getDebtorIdentityNumAgent()))) {
|
||||
failureMsg.append("【被申请人主体信息-代理人身份证号】不合法;");
|
||||
}
|
||||
String debtorContactTelphoneAgent = caseApplication.getDebtorContactTelphoneAgent();
|
||||
if (StrUtil.isEmpty(debtorContactTelphoneAgent)) {
|
||||
failureMsg.append("【被申请人主体信息-代理人联系电话】字段不能为空;");
|
||||
} else if (!TELEPHONE_REGX.matcher(debtorContactTelphoneAgent).matches()) {
|
||||
failureMsg.append("【被申请人主体信息-代理人联系电话】字段不合法;");
|
||||
}
|
||||
if (StrUtil.isEmpty(caseApplication.getDebtorContactAddressAgent())) {
|
||||
failureMsg.append("【被申请人主体信息-代理人联系地址】字段不能为空;");
|
||||
} else if (caseApplication.getDebtorContactAddressAgent().length() > 50) {
|
||||
failureMsg.append("【被申请人主体信息-代理人联系地址】字段超出指定长度,最大长度为50;");
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 校验被申请人信息
|
||||
*
|
||||
* @param caseApplication
|
||||
* @param failureMsg
|
||||
*/
|
||||
private void validDebtorApplicationColumn(CaseApplication caseApplication, StringBuilder failureMsg) {
|
||||
if (StrUtil.isEmpty(caseApplication.getDebtorName())) {
|
||||
failureMsg.append("【被申请人主体信息-申请人姓名】字段不能为空;");
|
||||
} else if (caseApplication.getDebtorName().length() > 50) {
|
||||
failureMsg.append("【被申请人主体信息-申请人姓名】字段超出指定长度,最大长度为50;");
|
||||
}
|
||||
if (StrUtil.isEmpty(caseApplication.getDebtorIdentityNum())) {
|
||||
failureMsg.append("【被申请人主体信息-身份证号】字段不能为空;");
|
||||
} else if (!IdcardUtil.isValidCard(caseApplication.getDebtorIdentityNum())) {
|
||||
failureMsg.append("【被申请人主体信息-身份证号】不合法;");
|
||||
}
|
||||
String debtorContactTelphone = caseApplication.getDebtorContactTelphone();
|
||||
if (StrUtil.isEmpty(debtorContactTelphone)) {
|
||||
failureMsg.append("【被申请人主体信息-联系电话】字段不能为空;");
|
||||
} else if (!TELEPHONE_REGX.matcher(debtorContactTelphone).matches()) {
|
||||
failureMsg.append("【被申请人主体信息-联系电话】字段不合法;");
|
||||
}
|
||||
if (StrUtil.isEmpty(caseApplication.getDebtorContactAddress())) {
|
||||
failureMsg.append("【被申请人主体信息-联系地址】字段不能为空;");
|
||||
} else if (caseApplication.getDebtorContactAddress().length() > 50) {
|
||||
failureMsg.append("【被申请人主体信息-联系地址】字段超出指定长度,最大长度为50;");
|
||||
}
|
||||
String debtorWorkTelphone = caseApplication.getDebtorWorkTelphone();
|
||||
if (StrUtil.isEmpty(debtorWorkTelphone)) {
|
||||
failureMsg.append("【被申请人主体信息-单位电话】字段不能为空;");
|
||||
} else if (!TELEPHONE_REGX.matcher(debtorWorkTelphone).matches()) {
|
||||
failureMsg.append("【被申请人主体信息-单位电话】字段不合法;");
|
||||
}
|
||||
if (StrUtil.isEmpty(caseApplication.getDebtorWorkAddress())) {
|
||||
failureMsg.append("【被申请人主体信息-单位地址】字段不能为空;");
|
||||
} else if (caseApplication.getDebtorWorkAddress().length() > 50) {
|
||||
failureMsg.append("【被申请人主体信息-单位地址】字段超出指定长度,最大长度为50;");
|
||||
}
|
||||
if (StrUtil.isEmpty(caseApplication.getResponSex())) {
|
||||
failureMsg.append("【被申请人主体信息-性别】字段不能为空;");
|
||||
} else if (caseApplication.getResponSex().length() > 1) {
|
||||
failureMsg.append("【被申请人主体信息-性别】字段超出指定长度,最大长度为1;");
|
||||
}
|
||||
if (caseApplication.getResponBirth() == null) {
|
||||
failureMsg.append("【被申请人主体信息-出生年月日】字段不合法;");
|
||||
} else if (caseApplication.getResponBirth().after(new Date())) {
|
||||
failureMsg.append("【被申请人主体信息-出生年月日】字段不合法,不能超过当前日期;");
|
||||
}
|
||||
if (StrUtil.isEmpty(caseApplication.getDebtorEmail())) {
|
||||
failureMsg.append("【被申请人主体信息-邮箱】字段不能为空;");
|
||||
} else if (!EMAIL_PATTERN.matcher(caseApplication.getDebtorEmail()).matches()) {
|
||||
|
||||
failureMsg.append("【被申请人主体信息-邮箱】字段不合法;");
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 校验申请人代理信息
|
||||
*
|
||||
* @param caseApplication
|
||||
* @param failureMsg
|
||||
*/
|
||||
private void validApplicationAgentColumn(CaseApplication caseApplication, StringBuilder failureMsg, Map<String, Long> deptMap) {
|
||||
if (StrUtil.isEmpty(caseApplication.getNameAgent())) {
|
||||
failureMsg.append("【申请人主体信息-代理人姓名】字段不能为空;");
|
||||
} else if (caseApplication.getNameAgent().length() > 50) {
|
||||
failureMsg.append("【申请人主体信息-代理人姓名】字段超出指定长度,最大长度为50;");
|
||||
}
|
||||
if (StrUtil.isEmpty(caseApplication.getIdentityNumAgent())) {
|
||||
failureMsg.append("【申请人主体信息-代理人身份证号】字段不能为空;");
|
||||
} else if (!IdcardUtil.isValidCard(caseApplication.getIdentityNumAgent())) {
|
||||
failureMsg.append("【申请人主体信息-代理人身份证号】不合法;");
|
||||
}
|
||||
validAgentInfo(caseApplication, failureMsg, deptMap);
|
||||
String contactTelphoneAgent = caseApplication.getContactTelphoneAgent();
|
||||
if (StrUtil.isEmpty(contactTelphoneAgent)) {
|
||||
failureMsg.append("【申请人主体信息-代理人联系电话】字段不能为空;");
|
||||
} else if (!TELEPHONE_REGX.matcher(contactTelphoneAgent).matches()) {
|
||||
failureMsg.append("【申请人主体信息-代理人联系电话】字段不合法;");
|
||||
}
|
||||
if (StrUtil.isEmpty(caseApplication.getContactAddressAgent())) {
|
||||
failureMsg.append("【申请人主体信息-代理人联系地址】字段不能为空;");
|
||||
} else if (caseApplication.getContactAddressAgent().length() > 50) {
|
||||
failureMsg.append("【申请人主体信息-代理人联系地址】字段超出指定长度,最大长度为50;");
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 校验代理人与组织机构关系
|
||||
*
|
||||
* @param caseApplication
|
||||
* @param failureMsg
|
||||
* @return
|
||||
*/
|
||||
private void validAgentInfo(CaseApplication caseApplication, StringBuilder failureMsg, Map<String, Long> deptMap) {
|
||||
// 申请机构与代理人都不为空,校验代理人与组织机构关系(代理人必须在该部门下)
|
||||
if (StrUtil.isNotEmpty(caseApplication.getName()) && StrUtil.isNotEmpty(caseApplication.getNameAgent())) {
|
||||
String applicationOrganId = "";
|
||||
// 申请机构已经存在
|
||||
if (deptMap.containsKey(caseApplication.getName())) {
|
||||
applicationOrganId = String.valueOf(deptMap.get(caseApplication.getName()));
|
||||
}
|
||||
// 根据代理人身份证去用户表查询
|
||||
SysUser agentUser = sysUserMapper.selectUserByIdCard(caseApplication.getIdentityNumAgent());
|
||||
// 代理人的部门和申请机构不匹配
|
||||
if (null != agentUser && null != agentUser.getDeptId() && !String.valueOf(agentUser.getDeptId()).equals(applicationOrganId)) {
|
||||
// return "该申请代理人已在"+agentUser.getDeptName()+"申请机构下存在,请检查填写信息是否正确";
|
||||
if (null != agentUser.getDept() && StrUtil.isNotEmpty(agentUser.getDept().getDeptName())) {
|
||||
failureMsg.append("该申请代理人已在【").append(agentUser.getDept().getDeptName()).append("】申请机构下存在,请检查填写信息是否正确");
|
||||
} else {
|
||||
failureMsg.append("该申请代理人已存在,与申请机构不匹配,请检查填写信息是否正确");
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 校验申请人主题信息
|
||||
*
|
||||
* @param caseApplication
|
||||
* @param failureMsg
|
||||
*/
|
||||
private void validApplicationColumn(CaseApplication caseApplication, StringBuilder failureMsg) {
|
||||
if (StrUtil.isEmpty(caseApplication.getName())) {
|
||||
failureMsg.append("【申请人主体信息-申请人(机构)】字段不能为空;");
|
||||
} else if (caseApplication.getName().length() > 20) {
|
||||
failureMsg.append("【申请人主体信息-申请人(机构)】字段超出指定长度,最大长度为20;");
|
||||
}
|
||||
if (StrUtil.isNotEmpty(caseApplication.getIdentityNum()) && caseApplication.getIdentityNum().length() > 50) {
|
||||
failureMsg.append("【申请人主体信息-代码】字段超出指定长度,最大长度为50;");
|
||||
}
|
||||
String contactTelphone = caseApplication.getContactTelphone();
|
||||
if (StrUtil.isEmpty(contactTelphone)) {
|
||||
failureMsg.append("【申请人主体信息-联系电话】字段不能为空;");
|
||||
} else if (!TELEPHONE_REGX.matcher(contactTelphone).matches()) {
|
||||
failureMsg.append("【申请人主体信息-联系电话】字段不合法;");
|
||||
}
|
||||
if (StrUtil.isEmpty(caseApplication.getContactAddress())) {
|
||||
failureMsg.append("【申请人主体信息-联系地址】字段不能为空;");
|
||||
} else if (caseApplication.getName().length() > 50) {
|
||||
failureMsg.append("【申请人主体信息-联系地址】字段超出指定长度,最大长度为50;");
|
||||
}
|
||||
String workTelphone = caseApplication.getWorkTelphone();
|
||||
if (StrUtil.isEmpty(workTelphone)) {
|
||||
failureMsg.append("【申请人主体信息-单位电话】字段不能为空;");
|
||||
} else if (!TELEPHONE_REGX.matcher(workTelphone).matches()) {
|
||||
failureMsg.append("【申请人主体信息-单位电话】字段不合法;");
|
||||
}
|
||||
if (StrUtil.isEmpty(caseApplication.getWorkAddress())) {
|
||||
failureMsg.append("【申请人主体信息-单位地址】字段不能为空;");
|
||||
} else if (caseApplication.getWorkAddress().length() > 50) {
|
||||
failureMsg.append("【申请人主体信息-单位地址】字段超出指定长度,最大长度为50;");
|
||||
}
|
||||
if (StrUtil.isEmpty(caseApplication.getEmail())) {
|
||||
failureMsg.append("【申请人主体信息-邮箱】字段不能为空;");
|
||||
} else if (!EMAIL_PATTERN.matcher(caseApplication.getEmail()).matches()) {
|
||||
|
||||
failureMsg.append("【申请人主体信息-邮箱】字段不合法;");
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 校验基本字段
|
||||
*
|
||||
* @param caseApplication
|
||||
* @param failureMsg
|
||||
*/
|
||||
private void validBaseColumn(CaseApplication caseApplication, StringBuilder failureMsg) {
|
||||
if (StrUtil.isEmpty(caseApplication.getCaseName())) {
|
||||
failureMsg.append("【案件名称】字段不能为空;");
|
||||
} else if (caseApplication.getCaseName().length() > 50) {
|
||||
failureMsg.append("【案件名称】字段超出指定长度,最大长度为50;");
|
||||
}
|
||||
BigDecimal caseSubjectAmount = caseApplication.getCaseSubjectAmount();
|
||||
if (null == caseSubjectAmount) {
|
||||
failureMsg.append("【案件标的】字段不合法;");
|
||||
} else {
|
||||
if (caseSubjectAmount.compareTo(new BigDecimal("0")) < 0 || caseSubjectAmount.compareTo(new BigDecimal("99999999.99")) > 0) {
|
||||
failureMsg.append("【案件标的】字段超出范围,范围为[0,100000000);");
|
||||
}
|
||||
if (caseSubjectAmount.scale() > 2) {
|
||||
failureMsg.append("【案件标的】字段超出指定精度(10^-2);");
|
||||
}
|
||||
}
|
||||
if (caseApplication.getLoanStartDate() == null) {
|
||||
failureMsg.append("【借款开始日期】字段不合法;");
|
||||
}
|
||||
if (caseApplication.getLoanEndDate() == null) {
|
||||
failureMsg.append("【借款结束日期】字段不合法;");
|
||||
}
|
||||
if (caseApplication.getLoanStartDate() != null && caseApplication.getLoanEndDate() != null && caseApplication.getLoanStartDate().after(caseApplication.getLoanEndDate())) {
|
||||
failureMsg.append("【借款结束日期】不能早于【借款开始日期】;");
|
||||
}
|
||||
if (StrUtil.isEmpty(caseApplication.getContractNumber())) {
|
||||
failureMsg.append("【合同编号】字段不能为空;");
|
||||
} else if (caseApplication.getContractNumber().length() > 50) {
|
||||
failureMsg.append("【合同编号】字段超出指定长度,最大长度为50;");
|
||||
}
|
||||
BigDecimal claimPrinciOwed = caseApplication.getClaimPrinciOwed();
|
||||
if (null == claimPrinciOwed) {
|
||||
failureMsg.append("【申请人主张欠本金】字段不合法;");
|
||||
} else {
|
||||
if (claimPrinciOwed.compareTo(new BigDecimal("0")) < 0 || claimPrinciOwed.compareTo(new BigDecimal("99999999.99")) > 0) {
|
||||
failureMsg.append("【申请人主张欠本金】字段超出范围,范围为[0,100000000);");
|
||||
}
|
||||
if (claimPrinciOwed.scale() > 2) {
|
||||
failureMsg.append("【申请人主张欠本金】字段超出指定精度(10^-2);");
|
||||
}
|
||||
}
|
||||
BigDecimal claimInterestOwed = caseApplication.getClaimInterestOwed();
|
||||
if (null == claimInterestOwed) {
|
||||
failureMsg.append("【申请人主张欠利息】字段不合法;");
|
||||
} else {
|
||||
if (claimInterestOwed.compareTo(new BigDecimal("0")) < 0 || claimInterestOwed.compareTo(new BigDecimal("99999999.99")) > 0) {
|
||||
failureMsg.append("【申请人主张欠利息】字段超出范围,范围为[0,100000000);");
|
||||
}
|
||||
if (claimInterestOwed.scale() > 2) {
|
||||
failureMsg.append("【申请人主张欠利息】字段超出指定精度(10^-2);");
|
||||
}
|
||||
}
|
||||
BigDecimal claimLiquidDamag = caseApplication.getClaimLiquidDamag();
|
||||
if (null == claimLiquidDamag) {
|
||||
failureMsg.append("【申请人主张违约金】字段不合法;");
|
||||
} else {
|
||||
if (claimLiquidDamag.compareTo(new BigDecimal("0")) < 0 || claimLiquidDamag.compareTo(new BigDecimal("99999999.99")) > 0) {
|
||||
failureMsg.append("【申请人主张违约金】字段超出范围,范围为[0,100000000);");
|
||||
}
|
||||
if (claimLiquidDamag.scale() > 2) {
|
||||
failureMsg.append("【申请人主张违约金】字段超出指定精度(10^-2);");
|
||||
}
|
||||
}
|
||||
if (StrUtil.isEmpty(caseApplication.getArbitratClaims())) {
|
||||
failureMsg.append("【申请人仲裁请求及事实和理由】字段不能为空;");
|
||||
} else if (caseApplication.getArbitratClaims().length() > 10000) {
|
||||
failureMsg.append("【申请人仲裁请求及事实和理由】字段超出指定长度,最大长度为10000;");
|
||||
}
|
||||
if (StrUtil.isNotEmpty(caseApplication.getArbitratClaims()) && caseApplication.getArbitratClaims().length() > 10000) {
|
||||
failureMsg.append("【申请人请求仲裁庭裁决】字段超出指定长度,最大长度为10000;");
|
||||
}
|
||||
}
|
||||
}
|
||||
+3
@@ -34,6 +34,9 @@ public class CaseLogRecordServiceImpl implements ICaseLogRecordService {
|
||||
if(StrUtil.isNotEmpty(record.getContent())){
|
||||
contentBuilder.append(record.getContent());
|
||||
}
|
||||
if(StrUtil.isNotEmpty(record.getNotes())){
|
||||
contentBuilder.append(",").append(record.getNotes());
|
||||
}
|
||||
record.setContent(contentBuilder.toString());
|
||||
|
||||
});
|
||||
|
||||
+72
@@ -0,0 +1,72 @@
|
||||
package com.ruoyi.wisdomarbitrate.service.impl;
|
||||
|
||||
import com.ruoyi.common.core.domain.AjaxResult;
|
||||
import com.ruoyi.common.utils.StringUtils;
|
||||
import com.ruoyi.wisdomarbitrate.domain.CaseNumRule;
|
||||
import com.ruoyi.wisdomarbitrate.mapper.CaseNumRuleMapper;
|
||||
import com.ruoyi.wisdomarbitrate.service.ICaseNumRuleService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Service
|
||||
public class CaseNumRuleServiceImpl implements ICaseNumRuleService {
|
||||
@Autowired
|
||||
private CaseNumRuleMapper caseNumRuleMapper;
|
||||
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public AjaxResult insertCaseNumRule(CaseNumRule caseNumRule) {
|
||||
int countCaseNumRule = caseNumRuleMapper.countCaseNumRule(caseNumRule);
|
||||
if (countCaseNumRule>0){
|
||||
return AjaxResult.error("不能新增相同案件编号规则");
|
||||
}
|
||||
int i = caseNumRuleMapper.insertCaseNumRule(caseNumRule);
|
||||
if (i>0){
|
||||
return AjaxResult.success("新增成功");
|
||||
}
|
||||
return AjaxResult.error("新增失败");
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public AjaxResult updateCaseNumRule(CaseNumRule caseNumRule) {
|
||||
int countCaseNumRule = caseNumRuleMapper.countCaseNumRule(caseNumRule);
|
||||
if (countCaseNumRule>0){
|
||||
return AjaxResult.error("不能修改相同案件编号规则");
|
||||
}
|
||||
int i = caseNumRuleMapper.updateCaseNumRule(caseNumRule);
|
||||
if (i > 0) {
|
||||
return AjaxResult.success("修改成功");
|
||||
}
|
||||
return AjaxResult.error("新增失败");
|
||||
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public AjaxResult deleteCaseNumRule(CaseNumRule caseNumRule) {
|
||||
int i = caseNumRuleMapper.deleteCaseNumRule(caseNumRule);
|
||||
if (i > 0) {
|
||||
return AjaxResult.success("删除成功");
|
||||
}
|
||||
return AjaxResult.error();
|
||||
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<CaseNumRule> selectCaseNumRule(CaseNumRule caseNumRule) {
|
||||
return caseNumRuleMapper.selectCaseNumRules(caseNumRule);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
+240
-20
@@ -9,6 +9,7 @@ import com.ruoyi.common.core.domain.AjaxResult;
|
||||
import com.ruoyi.common.core.domain.model.LoginUser;
|
||||
import com.ruoyi.common.exception.ServiceException;
|
||||
import com.ruoyi.common.utils.SecurityUtils;
|
||||
import com.ruoyi.common.utils.StringUtils;
|
||||
import com.ruoyi.wisdomarbitrate.domain.*;
|
||||
import com.ruoyi.wisdomarbitrate.domain.dto.CaseConfirmPayDTO;
|
||||
import com.ruoyi.wisdomarbitrate.domain.vo.CasePayListVO;
|
||||
@@ -20,6 +21,7 @@ import com.ruoyi.dto.PayRequest;
|
||||
import com.ruoyi.dto.PayResponse;
|
||||
import com.ruoyi.wisdomarbitrate.domain.dto.CasePayDTO;
|
||||
import com.ruoyi.wisdomarbitrate.service.ICasePaymentService;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
@@ -28,6 +30,7 @@ import java.math.BigDecimal;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import static com.ruoyi.common.utils.SecurityUtils.getUsername;
|
||||
|
||||
@@ -90,26 +93,30 @@ public class CasePaymentServiceImpl implements ICasePaymentService {
|
||||
@Transactional
|
||||
public AjaxResult callback(String orderNumber) {
|
||||
//查询记录
|
||||
CasePaymentRecord casePaymentRecord = casePaymentRecordMapper.queryRecord(orderNumber);
|
||||
if (casePaymentRecord == null) {
|
||||
List<CasePaymentRecord> casePaymentRecords = casePaymentRecordMapper.queryRecord(orderNumber);
|
||||
if(casePaymentRecords!=null&&casePaymentRecords.size()>0){
|
||||
for (CasePaymentRecord casePaymentRecord:casePaymentRecords){
|
||||
Long caseId = casePaymentRecord.getCaseId();
|
||||
//更改记录表里的支付状态和支付时间
|
||||
casePaymentRecord.setPaymentStatus(1);
|
||||
casePaymentRecord.setPaymentTime(new Date());
|
||||
casePaymentRecord.setUpdateTime(new Date());
|
||||
casePaymentRecordMapper.update(casePaymentRecord);
|
||||
}
|
||||
}else {
|
||||
return AjaxResult.error("未查询到相关记录");
|
||||
}
|
||||
Long caseId = casePaymentRecord.getCaseId();
|
||||
//更改记录表里的支付状态和支付时间
|
||||
casePaymentRecord.setPaymentStatus(1);
|
||||
casePaymentRecord.setPaymentTime(new Date());
|
||||
casePaymentRecord.setUpdateTime(new Date());
|
||||
casePaymentRecordMapper.update(casePaymentRecord);
|
||||
|
||||
return AjaxResult.success("支付成功");
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public AjaxResult confirmPayment(CaseApplication caseApplication) {
|
||||
caseApplication.setCaseStatus(CaseApplicationConstants.CASE_CROSSEXAMI);
|
||||
int i = caseApplicationMapper.submitCaseApplication(caseApplication);
|
||||
if (i > 0) {
|
||||
public AjaxResult confirmPayment( List<Long> ids) {
|
||||
for (Long id : ids) {
|
||||
CaseApplication caseApplication = new CaseApplication();
|
||||
caseApplication.setId(id);
|
||||
caseApplication.setCaseStatus(CaseApplicationConstants.CASE_CROSSEXAMI);
|
||||
caseApplicationMapper.submitCaseApplication(caseApplication);
|
||||
//发送短信通知
|
||||
SmsUtils.SendSmsRequest request = new SmsUtils.SendSmsRequest();
|
||||
CaseAffiliate caseAffiliate = new CaseAffiliate();
|
||||
@@ -122,7 +129,7 @@ public class CasePaymentServiceImpl implements ICasePaymentService {
|
||||
//查询案件详细信息
|
||||
CaseApplication caseApplication1 = caseApplicationMapper.selectCaseApplication(caseApplication);
|
||||
if (caseApplication1 == null) {
|
||||
return AjaxResult.error();
|
||||
continue;
|
||||
}
|
||||
String caseName = "仲裁"; //这里案件名称表里未定义,暂时写死
|
||||
String caseNum = caseApplication1.getCaseNum();
|
||||
@@ -150,12 +157,13 @@ public class CasePaymentServiceImpl implements ICasePaymentService {
|
||||
}
|
||||
smsRecordMapper.saveSmsSendRecord(smsSendRecord);
|
||||
} else { //被申请人
|
||||
Boolean aBoolean = SmsUtils.sendSms(request);
|
||||
|
||||
request.setPhone(affiliate.getContactTelphone());
|
||||
request.setTemplateId("1952840");
|
||||
// 1952840 尊敬的{1}用户,您的{2}案件{3}已成功受理,请点击链接:https://miniapp-3gpama6l759911ef-1321289474.tcloudbaseapp.com/jump-mp.html 选择是否应诉。如非本人操作,请忽略本短信
|
||||
String name = affiliate.getName();
|
||||
request.setTemplateParamSet(new String[]{name, caseName, caseNum});
|
||||
Boolean aBoolean = SmsUtils.sendSms(request);
|
||||
//保存短信发送记录
|
||||
SmsSendRecord smsSendRecord = new SmsSendRecord();
|
||||
smsSendRecord.setCaseId(caseApplication.getId());
|
||||
@@ -181,11 +189,10 @@ public class CasePaymentServiceImpl implements ICasePaymentService {
|
||||
casePaymentRecordMapper.update(casePaymentRecord);
|
||||
// 新增日志
|
||||
CaseLogUtils.insertCaseLog(caseApplication.getId(), CaseApplicationConstants.CASE_CROSSEXAMI, "");
|
||||
|
||||
return AjaxResult.success();
|
||||
}
|
||||
}
|
||||
return AjaxResult.error("暂无需要确认的缴费清单");
|
||||
|
||||
return AjaxResult.success();
|
||||
}
|
||||
|
||||
@Transactional
|
||||
@@ -248,9 +255,8 @@ public class CasePaymentServiceImpl implements ICasePaymentService {
|
||||
caseApplication.setId(caseId);
|
||||
CaseApplication caseApplication1 = caseApplicationService.selectCaseApplication(caseApplication);
|
||||
BigDecimal feePayable = caseApplication1.getFeePayable();
|
||||
feePayable = feePayable.multiply(new BigDecimal(100));
|
||||
sum = sum.add(feePayable);
|
||||
listVO.setTotalFee(sum.intValue());
|
||||
listVO.setTotalFee(sum);
|
||||
caseApplicationPay.setCaseAppName(caseApplication1.getApplicantName());
|
||||
caseApplicationPay.setCaseResName(caseApplication1.getRespondentName());
|
||||
caseApplicationPay.setCaseNum(caseApplication1.getCaseNum());
|
||||
@@ -267,5 +273,219 @@ public class CasePaymentServiceImpl implements ICasePaymentService {
|
||||
return AjaxResult.success(listVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public AjaxResult confirmPayBatch(CasePayDTO payDTO) {
|
||||
|
||||
String batchNumber = payDTO.getBatchNumber();
|
||||
CaseApplication caseApplicationsel = new CaseApplication();
|
||||
caseApplicationsel.setBatchNumber(Integer.parseInt(batchNumber));
|
||||
caseApplicationsel.setCaseStatus(CaseApplicationConstants.PENDING_PAYMENT);
|
||||
List<CaseApplication> caseApplications = caseApplicationMapper.listCaseApplicationByBatchNumber(caseApplicationsel);
|
||||
List<Long> caseIds = caseApplications.stream().map(CaseApplication::getId).collect(Collectors.toList());
|
||||
if(caseApplications!=null&&caseApplications.size()>0){
|
||||
if (payDTO.getPayType() != null) {
|
||||
payDTO.setCaseIds(caseIds);
|
||||
// 修改支付方式
|
||||
CaseConfirmPayDTO caseConfirmPayDTO = new CaseConfirmPayDTO();
|
||||
BeanUtils.copyProperties(payDTO, caseConfirmPayDTO);
|
||||
caseApplicationMapper.updatePayType(caseConfirmPayDTO);
|
||||
}
|
||||
for (Long caseId : caseIds) {
|
||||
if (CollectionUtil.isNotEmpty(payDTO.getPayOrderList())) {
|
||||
for (CaseAttach caseAttach : payDTO.getPayOrderList()) {
|
||||
caseAttach.setCaseAppliId(caseId);
|
||||
caseAttachMapper.updateCaseAttach(caseAttach);
|
||||
}
|
||||
}
|
||||
|
||||
// 修改节点状态
|
||||
//根据案件id查询案件信息
|
||||
CaseApplication caseApplication = new CaseApplication();
|
||||
caseApplication.setId(caseId);
|
||||
CaseApplication caseApplication1 = caseApplicationMapper.selectCaseApplication(caseApplication);
|
||||
caseApplication1.setCaseStatus(CaseApplicationConstants.PENDING_PAYMENT_CONFIRM);
|
||||
//修改案件状态
|
||||
int i = caseApplicationMapper.submitCaseApplication(caseApplication1);
|
||||
if (i > 0) {
|
||||
// 修改支付状态
|
||||
CasePaymentRecord paymentRecord = new CasePaymentRecord();
|
||||
paymentRecord.setPayType(payDTO.getPayType());
|
||||
paymentRecord.setCaseId(caseId);
|
||||
paymentRecord.setPaymentStatus(1);
|
||||
casePaymentRecordMapper.saveRecord(paymentRecord);
|
||||
// 新增日志
|
||||
CaseLogUtils.insertCaseLog(caseApplication.getId(), CaseApplicationConstants.PENDING_PAYMENT_CONFIRM, "");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}else{
|
||||
throw new ServiceException("这个批号没有批量缴费的案件");
|
||||
}
|
||||
|
||||
return AjaxResult.success("确认缴费成功");
|
||||
}
|
||||
|
||||
@Override
|
||||
public AjaxResult casePayListBatch(CasePayDTO casePayDTO) {
|
||||
String batchNumber = casePayDTO.getBatchNumber();
|
||||
CaseApplication caseApplicationsel = new CaseApplication();
|
||||
caseApplicationsel.setBatchNumber(Integer.parseInt(batchNumber));
|
||||
// caseApplicationsel.setCaseStatus(CaseApplicationConstants.PENDING_PAYMENT);
|
||||
List<CaseApplication> caseApplications = caseApplicationMapper.listCaseApplicationByBatchNumber(caseApplicationsel);
|
||||
CasePayListVO listVO = new CasePayListVO();
|
||||
BigDecimal sum = new BigDecimal(0);
|
||||
if(caseApplications!=null&&caseApplications.size()>0){
|
||||
for(CaseApplication caseApplication:caseApplications){
|
||||
BigDecimal feePayable = caseApplication.getFeePayable();
|
||||
sum = sum.add(feePayable);
|
||||
}
|
||||
listVO.setTotalFee(sum);
|
||||
}
|
||||
if (sum.compareTo(BigDecimal.ZERO) == 0) {
|
||||
return AjaxResult.error("没有可支付的费用");
|
||||
}
|
||||
return AjaxResult.success(listVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public AjaxResult confirmPaymentBatch(String batchNumber) {
|
||||
CaseApplication caseApplicationsel = new CaseApplication();
|
||||
caseApplicationsel.setBatchNumber(Integer.parseInt(batchNumber));
|
||||
caseApplicationsel.setCaseStatus(CaseApplicationConstants.PENDING_PAYMENT_CONFIRM);
|
||||
List<CaseApplication> caseApplications = caseApplicationMapper.listCaseApplicationByBatchNumber(caseApplicationsel);
|
||||
|
||||
if (caseApplications != null && caseApplications.size() > 0) {
|
||||
List<Long> caseIds = caseApplications.stream().map(CaseApplication::getId).collect(Collectors.toList());
|
||||
for (Long caseId : caseIds) {
|
||||
CaseApplication caseApplication = new CaseApplication();
|
||||
caseApplication.setId(caseId);
|
||||
caseApplication.setCaseStatus(CaseApplicationConstants.CASE_CROSSEXAMI);
|
||||
caseApplicationMapper.submitCaseApplication(caseApplication);
|
||||
//发送短信通知
|
||||
SmsUtils.SendSmsRequest request = new SmsUtils.SendSmsRequest();
|
||||
CaseAffiliate caseAffiliate = new CaseAffiliate();
|
||||
caseAffiliate.setCaseAppliId(caseApplication.getId());
|
||||
List<CaseAffiliate> caseAffiliates = caseAffiliateMapper.selectCaseAffiliate(caseAffiliate); //获取案件关联人信息
|
||||
if (caseAffiliates != null && caseAffiliates.size() > 0) {
|
||||
for (CaseAffiliate affiliate : caseAffiliates) {
|
||||
//获取身份类型
|
||||
int identityType = affiliate.getIdentityType();
|
||||
//查询案件详细信息
|
||||
CaseApplication caseApplication1 = caseApplicationMapper.selectCaseApplication(caseApplication);
|
||||
if (caseApplication1 == null) {
|
||||
continue;
|
||||
}
|
||||
String caseName = "仲裁"; //这里案件名称表里未定义,暂时写死
|
||||
String caseNum = caseApplication1.getCaseNum();
|
||||
if (identityType == 1) { //申请人
|
||||
request.setPhone(affiliate.getContactTelphone());
|
||||
request.setTemplateId("1928003"); //传入申请人模板id
|
||||
// 这个值,要看你的模板中是否预留了占位符,如果没有则不需要设置
|
||||
// 模板id:1928003 普通短信 案件受理通知
|
||||
String name = affiliate.getName();
|
||||
request.setTemplateParamSet(new String[]{name, caseName, caseNum});
|
||||
Boolean aBoolean = SmsUtils.sendSms(request);
|
||||
//保存短信发送记录
|
||||
SmsSendRecord smsSendRecord = new SmsSendRecord();
|
||||
smsSendRecord.setCaseId(caseApplication.getId());
|
||||
smsSendRecord.setCaseNum(caseNum);
|
||||
smsSendRecord.setPhone(request.getPhone());
|
||||
smsSendRecord.setSendTime(new Date());
|
||||
String content = "尊敬的" + name + "用户,您的" + caseName + "案件" + caseNum + "已成功受理。";
|
||||
smsSendRecord.setSendContent(content);
|
||||
smsSendRecord.setCreateBy(getUsername());
|
||||
if (aBoolean) {
|
||||
smsSendRecord.setSendStatus(1);
|
||||
} else {
|
||||
smsSendRecord.setSendStatus(0);
|
||||
}
|
||||
smsRecordMapper.saveSmsSendRecord(smsSendRecord);
|
||||
} else { //被申请人
|
||||
|
||||
request.setPhone(affiliate.getContactTelphone());
|
||||
request.setTemplateId("1952840");
|
||||
// 1952840 尊敬的{1}用户,您的{2}案件{3}已成功受理,请点击链接:https://miniapp-3gpama6l759911ef-1321289474.tcloudbaseapp.com/jump-mp.html 选择是否应诉。如非本人操作,请忽略本短信
|
||||
String name = affiliate.getName();
|
||||
request.setTemplateParamSet(new String[]{name, caseName, caseNum});
|
||||
Boolean aBoolean = SmsUtils.sendSms(request);
|
||||
//保存短信发送记录
|
||||
SmsSendRecord smsSendRecord = new SmsSendRecord();
|
||||
smsSendRecord.setCaseId(caseApplication.getId());
|
||||
smsSendRecord.setCaseNum(caseNum);
|
||||
smsSendRecord.setPhone(request.getPhone());
|
||||
smsSendRecord.setSendTime(new Date());
|
||||
String content = "尊敬的" + name + "用户,您的" + caseName + "案件" + caseNum + "已成功受理,请点击链接:https://miniapp-3gpama6l759911ef-1321289474.tcloudbaseapp.com/jump-mp.html 选择是否应诉。如非本人操作,请忽略本短信";
|
||||
smsSendRecord.setSendContent(content);
|
||||
smsSendRecord.setCreateBy(getUsername());
|
||||
if (aBoolean) {
|
||||
smsSendRecord.setSendStatus(1);
|
||||
} else {
|
||||
smsSendRecord.setSendStatus(0);
|
||||
}
|
||||
smsRecordMapper.saveSmsSendRecord(smsSendRecord);
|
||||
}
|
||||
}
|
||||
//更改记录表里的支付状态和支付时间
|
||||
CasePaymentRecord casePaymentRecord = new CasePaymentRecord();
|
||||
casePaymentRecord.setPaymentStatus(1);
|
||||
casePaymentRecord.setCaseId(caseId);
|
||||
casePaymentRecord.setPaymentTime(new Date());
|
||||
casePaymentRecord.setUpdateTime(new Date());
|
||||
casePaymentRecordMapper.update(casePaymentRecord);
|
||||
// 新增日志
|
||||
CaseLogUtils.insertCaseLog(caseApplication.getId(), CaseApplicationConstants.CASE_CROSSEXAMI, "");
|
||||
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}else{
|
||||
throw new ServiceException("这个批号没有批量缴费确认的案件");
|
||||
}
|
||||
return AjaxResult.success();
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public AjaxResult casePayBatch(CasePayDTO casePayDTO) {
|
||||
PayRequest payRequest = new PayRequest();
|
||||
payRequest.setBody("案件缴费");
|
||||
payRequest.setOrderSn(System.currentTimeMillis() + "");
|
||||
payRequest.setTotalFee(casePayDTO.getTotalFee());
|
||||
PayResponse response = elegentPay.requestPay(payRequest, casePayDTO.getTradeType(), casePayDTO.getPlatform());
|
||||
if (response.getCode_url() == null) {
|
||||
return AjaxResult.error();
|
||||
}
|
||||
String batchNumber = casePayDTO.getBatchNumber();
|
||||
if(StringUtils.isEmpty(batchNumber) ){
|
||||
return AjaxResult.error("请检查参数是否有误");
|
||||
}
|
||||
CaseApplication caseApplicationsel = new CaseApplication();
|
||||
caseApplicationsel.setBatchNumber(Integer.parseInt(batchNumber));
|
||||
caseApplicationsel.setCaseStatus(CaseApplicationConstants.PENDING_PAYMENT);
|
||||
List<CaseApplication> caseApplications = caseApplicationMapper.listCaseApplicationByBatchNumber(caseApplicationsel);
|
||||
if(caseApplications!=null&&caseApplications.size()>0){
|
||||
List<Long> caseIds = caseApplications.stream().map(CaseApplication::getId).collect(Collectors.toList());
|
||||
for (Long caseId : caseIds) {
|
||||
//缴费记录表里新增数据
|
||||
CasePaymentRecord casePaymentRecord = new CasePaymentRecord();
|
||||
casePaymentRecord.setCaseId(caseId);
|
||||
casePaymentRecord.setOrderNumber(payRequest.getOrderSn());
|
||||
casePaymentRecord.setPaymentStatus(0);
|
||||
casePaymentRecord.setCreateTime(new Date());
|
||||
int count = casePaymentRecordMapper.saveRecord(casePaymentRecord);
|
||||
if (count < 1) {
|
||||
return AjaxResult.error();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return AjaxResult.success(response);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
+1035
File diff suppressed because it is too large
Load Diff
+128
-14
@@ -1,5 +1,7 @@
|
||||
package com.ruoyi.wisdomarbitrate.service.impl;
|
||||
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.github.pagehelper.PageHelper;
|
||||
import com.github.pagehelper.PageInfo;
|
||||
@@ -10,23 +12,21 @@ import com.ruoyi.common.constant.FileTransformation;
|
||||
import com.ruoyi.common.core.domain.AjaxResult;
|
||||
import com.ruoyi.common.core.domain.entity.EsignHttpResponse;
|
||||
import com.ruoyi.common.core.domain.entity.SysDept;
|
||||
import com.ruoyi.common.core.domain.entity.SysDictData;
|
||||
import com.ruoyi.common.core.domain.entity.SysUser;
|
||||
import com.ruoyi.common.exception.EsignDemoException;
|
||||
import com.ruoyi.common.exception.ServiceException;
|
||||
import com.ruoyi.common.utils.SealUtil;
|
||||
import com.ruoyi.common.utils.file.FileUploadUtils;
|
||||
import com.ruoyi.system.domain.SysUserPost;
|
||||
import com.ruoyi.system.mapper.SysDeptMapper;
|
||||
import com.ruoyi.system.mapper.SysDictDataMapper;
|
||||
import com.ruoyi.system.mapper.SysUserMapper;
|
||||
import com.ruoyi.system.mapper.SysUserPostMapper;
|
||||
import com.ruoyi.wisdomarbitrate.domain.CaseAttach;
|
||||
import com.ruoyi.wisdomarbitrate.domain.DeptIdentify;
|
||||
import com.ruoyi.wisdomarbitrate.domain.SealManage;
|
||||
import com.ruoyi.wisdomarbitrate.domain.TemplateManage;
|
||||
import com.ruoyi.wisdomarbitrate.domain.*;
|
||||
import com.ruoyi.wisdomarbitrate.domain.vo.SealListVO;
|
||||
import com.ruoyi.wisdomarbitrate.mapper.CaseAttachMapper;
|
||||
import com.ruoyi.wisdomarbitrate.mapper.DeptIdentifyMapper;
|
||||
import com.ruoyi.wisdomarbitrate.mapper.SealManageMapper;
|
||||
import com.ruoyi.wisdomarbitrate.mapper.TemplateManageMapper;
|
||||
import com.ruoyi.wisdomarbitrate.domain.vo.TemplateFatchRule;
|
||||
import com.ruoyi.wisdomarbitrate.mapper.*;
|
||||
import com.ruoyi.wisdomarbitrate.service.IDeptIdentifyService;
|
||||
import com.ruoyi.wisdomarbitrate.utils.SignAward;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
@@ -34,11 +34,14 @@ import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
import com.ruoyi.wisdomarbitrate.mapper.TemplateFatchRuleMapper;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.time.LocalDate;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
import static com.ruoyi.common.utils.PageUtils.startPage;
|
||||
import static com.ruoyi.common.utils.SecurityUtils.getUsername;
|
||||
@@ -60,6 +63,12 @@ public class DeptIdentifyServiceImpl implements IDeptIdentifyService {
|
||||
private TemplateManageMapper templateManageMapper;
|
||||
@Autowired
|
||||
private SysUserPostMapper sysUserPostMapper;
|
||||
@Autowired
|
||||
private TemplateFatchRuleMapper templateFatchRuleMapper;
|
||||
@Autowired
|
||||
private FatchRuleMapper fatchRuleMapper;
|
||||
@Autowired
|
||||
private SysDictDataMapper dictDataMapper;
|
||||
|
||||
|
||||
@Override
|
||||
@@ -282,12 +291,14 @@ public class DeptIdentifyServiceImpl implements IDeptIdentifyService {
|
||||
if (annexId != null) {
|
||||
//根据附件id查询路径
|
||||
CaseAttach caseAttach = caseAttachMapper.queryAnnexById(annexId);
|
||||
String annexName = caseAttach.getAnnexName();
|
||||
String prefix = "/profile";
|
||||
int startIndex = annexName.indexOf(prefix);
|
||||
startIndex += prefix.length();
|
||||
String annexPath = "/uploadPath" + annexName.substring(startIndex);
|
||||
sealManage1.setAnnexPath(annexPath);
|
||||
if(caseAttach!=null){
|
||||
String annexName = caseAttach.getAnnexName();
|
||||
String prefix = "/profile";
|
||||
int startIndex = annexName.indexOf(prefix);
|
||||
startIndex += prefix.length();
|
||||
String annexPath = "/uploadPath" + annexName.substring(startIndex);
|
||||
sealManage1.setAnnexPath(annexPath);
|
||||
}
|
||||
} else {
|
||||
sealManage1.setAnnexPath(null);
|
||||
}
|
||||
@@ -530,6 +541,109 @@ public class DeptIdentifyServiceImpl implements IDeptIdentifyService {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<FatchRule> getFatchRuleByTemplateid(TemplateManage templateManage) {
|
||||
|
||||
FatchRule fatchRule = new FatchRule();
|
||||
fatchRule.setTemplateId(templateManage.getId());
|
||||
return fatchRuleMapper.selectFatchRuleList(fatchRule);
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public AjaxResult saveFatchRules(TemplateManage templateManage) {
|
||||
TemplateFatchRule templateFatchRule = new TemplateFatchRule();
|
||||
templateFatchRule.setTemplateId(templateManage.getId());
|
||||
templateFatchRuleMapper.deleteTemplateFatchRule(templateManage.getId());
|
||||
|
||||
List<FatchRule> fatchRules = templateManage.getFatchRules();
|
||||
|
||||
Map<Object, Long> columnmap = fatchRules.stream().collect(Collectors.groupingBy(fatchRule -> fatchRule.getColumn(), Collectors.counting()));
|
||||
Stream<Object> columnStream = columnmap.entrySet().stream().filter(entry -> entry.getValue() > 1).map(entry -> entry.getKey());
|
||||
List<String> strlist1 = new ArrayList<>();
|
||||
columnStream.forEach(column -> {
|
||||
strlist1.add(column.toString());
|
||||
});
|
||||
if(strlist1!=null&&strlist1.size()>0){
|
||||
throw new ServiceException("字段' " + String.join(",", strlist1) + " '重复");
|
||||
}
|
||||
|
||||
Map<Object, Long> columnNamemap = fatchRules.stream().collect(Collectors.groupingBy(fatchRule -> fatchRule.getColumnName(), Collectors.counting()));
|
||||
Stream<Object> columnNameStream = columnNamemap.entrySet().stream().filter(entry -> entry.getValue() > 1).map(entry -> entry.getKey());
|
||||
List<String> strlist2 = new ArrayList<>();
|
||||
columnNameStream.forEach(column -> {
|
||||
strlist2.add(column.toString());
|
||||
});
|
||||
if(strlist2!=null&&strlist2.size()>0){
|
||||
throw new ServiceException("字段' " + String.join(",", strlist2) + " '重复");
|
||||
}
|
||||
|
||||
if(fatchRules!=null&&fatchRules.size()>0){
|
||||
for (FatchRule fatchRule : fatchRules) {
|
||||
//保存抓取规则数据
|
||||
fatchRuleMapper.insertFatchRule(fatchRule);
|
||||
//保存模板抓取规则关联关系
|
||||
Long fatchRuleId = fatchRule.getId();
|
||||
if(fatchRuleId!=null){
|
||||
templateFatchRule.setFatchRuleId(fatchRuleId);
|
||||
templateFatchRuleMapper.insertTemplateFatchRule(templateFatchRule);
|
||||
}
|
||||
}
|
||||
return AjaxResult.success("新增成功");
|
||||
}
|
||||
return AjaxResult.error();
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<FatchRule> selectColumnandComment() {
|
||||
List<FatchRule> fatchRules = new ArrayList<>();
|
||||
FatchRule fatchRuleselect = new FatchRule();
|
||||
fatchRuleselect.setDatabaseName("test_smart_arbitration");
|
||||
fatchRules = fatchRuleMapper.selectColumnandComment(fatchRuleselect);
|
||||
return fatchRules;
|
||||
}
|
||||
|
||||
@Override
|
||||
public FatchRule selectColumnbycomment(FatchRule fatchRule) {
|
||||
fatchRule.setDatabaseName("test_smart_arbitration");
|
||||
FatchRule fatchRulesel = fatchRuleMapper.selectColumnbycomment(fatchRule);
|
||||
return fatchRulesel;
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据模板id查询模板字段列表
|
||||
* @param templateManage
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<FatchRule> getTemplateInfoById(TemplateManage templateManage) {
|
||||
FatchRule fatchRule = new FatchRule();
|
||||
fatchRule.setTemplateId(templateManage.getId());
|
||||
List<FatchRule> fatchRuleList = fatchRuleMapper.selectFatchRuleList(fatchRule);
|
||||
if(CollectionUtil.isEmpty(fatchRuleList)){
|
||||
fatchRuleList=new ArrayList<>();
|
||||
}
|
||||
List<String> columnNameList = fatchRuleList.stream().map(FatchRule::getColumnName).collect(Collectors.toList());
|
||||
// 在系统表中查询案件内置字段
|
||||
SysDictData sysDictData = new SysDictData();
|
||||
sysDictData.setDictType("case_built_type");
|
||||
List<SysDictData> dictDataList = dictDataMapper.selectDictDataList(sysDictData);
|
||||
if(CollectionUtil.isNotEmpty(dictDataList)){
|
||||
for (SysDictData dictData : dictDataList) {
|
||||
if(StrUtil.isEmpty(dictData.getDictLabel())||columnNameList.contains(dictData.getDictLabel())){
|
||||
continue;
|
||||
}
|
||||
FatchRule rule=new FatchRule();
|
||||
rule.setColumn(dictData.getDictValue());
|
||||
rule.setColumnName(dictData.getDictLabel());
|
||||
fatchRuleList.add(rule);
|
||||
}
|
||||
}
|
||||
|
||||
return fatchRuleList;
|
||||
}
|
||||
|
||||
private String getFileExtension(String fileName) {
|
||||
int lastDotIndex = fileName.lastIndexOf(".");
|
||||
if (lastDotIndex > 0 && lastDotIndex < fileName.length() - 1) {
|
||||
|
||||
+4
@@ -7,6 +7,7 @@ import com.ruoyi.wisdomarbitrate.mapper.TemplateManualMapper;
|
||||
import com.ruoyi.wisdomarbitrate.service.ITemplateService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.List;
|
||||
@Service
|
||||
@@ -14,6 +15,7 @@ public class TemplateServiceImpl implements ITemplateService {
|
||||
@Autowired
|
||||
private TemplateManualMapper templateManualMapper;
|
||||
@Override
|
||||
@Transactional
|
||||
public AjaxResult insertTemplate(TemplateManual templateManual) {
|
||||
int i = templateManualMapper.insertTemplateManual(templateManual);
|
||||
if (i>0){
|
||||
@@ -23,6 +25,7 @@ public class TemplateServiceImpl implements ITemplateService {
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public AjaxResult deleteTemplate(Long id) {
|
||||
TemplateManual templateManual = new TemplateManual();
|
||||
templateManual.setId(id);
|
||||
@@ -35,6 +38,7 @@ public class TemplateServiceImpl implements ITemplateService {
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public AjaxResult updateTemplate(TemplateManual templateManual) {
|
||||
int i = templateManualMapper.updateTemplateManual(templateManual);
|
||||
if (i > 0) {
|
||||
|
||||
+24
-4
@@ -3,6 +3,7 @@ package com.ruoyi.wisdomarbitrate.service.impl;
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import cn.hutool.http.HttpUtil;
|
||||
import cn.hutool.json.JSONUtil;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
@@ -118,8 +119,8 @@ public class VideoServiceImpl implements VideoService {
|
||||
Integer eventType = jsonObject.getInteger("EventType"); // 事件类型
|
||||
String eventInfo = jsonObject.getString("EventInfo"); // 事件信息
|
||||
JSONObject jsonObject1 = (JSONObject) JSON.parse(eventInfo);
|
||||
String roomId = jsonObject1.getString("RoomId");
|
||||
String taskId = jsonObject1.getString("TaskId"); // 任务ID
|
||||
String roomId = jsonObject1.getString("RoomId");
|
||||
String taskId = jsonObject1.getString("TaskId"); // 任务ID
|
||||
String payload = jsonObject1.getString("Payload"); // 根据不同事件类型定义不同
|
||||
JSONObject jsonObject2 = (JSONObject) JSON.parse(payload);
|
||||
String tencentVod = jsonObject2.getString("TencentVod"); // 点播平台信息
|
||||
@@ -134,10 +135,27 @@ public class VideoServiceImpl implements VideoService {
|
||||
String mediaId = jsonObject3.getString("MediaId");
|
||||
// 建立相关的数据库用来存储音视频录制地址并和相关的业务ID绑定,用于后续下载
|
||||
try {
|
||||
downloadImage(fileId,videoUrl,roomId);
|
||||
// 调解系统roomId>4294967294L/2
|
||||
if(StrUtil.isNotEmpty(roomId)) {
|
||||
log.debug("roomId:" + roomId);
|
||||
if (Long.valueOf(roomId) > 4294967294L / 2) {
|
||||
log.debug("调用调解系统:" );
|
||||
log.debug("回调jsonObject:"+jsonObject );
|
||||
// 调用调解系统
|
||||
cn.hutool.json.JSONObject params = JSONUtil.createObj();
|
||||
params.set("roomId",roomId);
|
||||
params.set("fileId",fileId);
|
||||
params.set("videoUrl",videoUrl);
|
||||
String post = HttpUtil.post("http://121.40.189.20:7001/video/videoRollBack", params.toJSONString(2));
|
||||
throw new RuntimeException(post);
|
||||
|
||||
} else {
|
||||
downloadImage(fileId, videoUrl, roomId);
|
||||
}
|
||||
}
|
||||
|
||||
} catch (IOException e) {
|
||||
throw new RuntimeException(e);
|
||||
throw new RuntimeException("roomId:"+roomId);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -174,6 +192,8 @@ public class VideoServiceImpl implements VideoService {
|
||||
return success(caseAttachList);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 开启腾讯云录制
|
||||
* @param roomId
|
||||
|
||||
@@ -0,0 +1,72 @@
|
||||
package com.ruoyi.wisdomarbitrate.task;
|
||||
|
||||
|
||||
import com.ruoyi.common.core.domain.entity.SysDictData;
|
||||
import com.ruoyi.common.core.domain.entity.SysUser;
|
||||
import com.ruoyi.common.core.domain.model.LoginUser;
|
||||
import com.ruoyi.wisdomarbitrate.domain.CaseApplication;
|
||||
import com.ruoyi.wisdomarbitrate.domain.FatchRule;
|
||||
import com.ruoyi.wisdomarbitrate.service.impl.CaseZipImportImpl;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.concurrent.Callable;
|
||||
|
||||
/**
|
||||
* @description rbd调用xfta计算任务类
|
||||
* @Author mingYang
|
||||
* @Date 2021/11/12 15:35
|
||||
* @Version V1.0
|
||||
**/
|
||||
|
||||
public class CaseZipImportTask implements Callable<List<CaseApplication>> {
|
||||
private CaseZipImportImpl caseZipImportImpl;
|
||||
private Long templateId;
|
||||
private List<FatchRule> fatchRuleList;
|
||||
private Map<String, String> fatchMap;
|
||||
private Map<String, List<FatchRule>> fatchRuleMap;
|
||||
private Map<String, SysUser> userMap;
|
||||
private List<SysDictData> dictDataList;
|
||||
private File[] files;
|
||||
private Map<String, Long> deptMap;
|
||||
private LoginUser loginUser;
|
||||
private Integer maxBatchNumber;
|
||||
|
||||
public CaseZipImportTask(CaseZipImportImpl caseZipImportImpl, Long templateId, List<FatchRule> fatchRuleList, Map<String, String> fatchMap, Map<String, List<FatchRule>> fatchRuleMap, Map<String, SysUser> userMap, List<SysDictData> dictDataList, File[] files, Map<String, Long> deptMap, LoginUser loginUser,Integer maxBatchNumber) {
|
||||
this.caseZipImportImpl = caseZipImportImpl;
|
||||
this.templateId = templateId;
|
||||
this.fatchRuleList = fatchRuleList;
|
||||
this.fatchMap = fatchMap;
|
||||
this.fatchRuleMap = fatchRuleMap;
|
||||
this.userMap = userMap;
|
||||
this.dictDataList = dictDataList;
|
||||
this.files = files;
|
||||
this.deptMap = deptMap;
|
||||
this.loginUser = loginUser;
|
||||
this.maxBatchNumber = maxBatchNumber;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<CaseApplication> call() {
|
||||
List<CaseApplication> caseApplications = new ArrayList<>();
|
||||
try {
|
||||
for (File file1 : files) {
|
||||
if (file1.isDirectory() && file1.listFiles() != null) {
|
||||
|
||||
for (File file2 : file1.listFiles()) {
|
||||
CaseApplication caseApplication = caseZipImportImpl.buildCaseInfo(file2, templateId, fatchRuleList, fatchRuleMap, fatchMap, userMap, dictDataList, deptMap, loginUser,maxBatchNumber);
|
||||
if (caseApplication != null) {
|
||||
caseApplications.add(caseApplication);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch (Exception e) {
|
||||
throw new RuntimeException("导入失败");
|
||||
}
|
||||
|
||||
return caseApplications;
|
||||
}
|
||||
}
|
||||
@@ -10,6 +10,7 @@ import com.ruoyi.wisdomarbitrate.mapper.CaseLogRecordMapper;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 案件记录日志文件
|
||||
@@ -46,6 +47,38 @@ public class CaseLogUtils
|
||||
operLog.setNotes(notes);
|
||||
caseLogRecordMapper.insertCaseLogRecord(operLog);
|
||||
}
|
||||
/**
|
||||
* 新增案件日志
|
||||
* @param caseAppliId 案件id,不能为空
|
||||
* @param caseNode 案件节点,不能为空
|
||||
* @param notes 备注
|
||||
*/
|
||||
public static void insertCaseLog(@NotNull Long caseAppliId, @NotEmpty Integer caseNode, String notes ,LoginUser loginUser ){
|
||||
CaseLogRecord operLog = new CaseLogRecord();
|
||||
// 获取当前的用户
|
||||
if(loginUser!=null) {
|
||||
SysUser sysUser = userMapper.selectUserById(loginUser.getUserId());
|
||||
operLog.setCreateBy(sysUser.getUserName());
|
||||
operLog.setCreateNickName(sysUser.getNickName());
|
||||
operLog.setUpdateBy(sysUser.getUserName());
|
||||
}else {
|
||||
operLog.setCreateBy("admin");
|
||||
operLog.setCreateNickName("管理员");
|
||||
operLog.setUpdateBy("admin");
|
||||
}
|
||||
operLog.setCaseAppliId(caseAppliId);
|
||||
operLog.setCaseNode(caseNode);
|
||||
operLog.setNotes(notes);
|
||||
caseLogRecordMapper.insertCaseLogRecord(operLog);
|
||||
}
|
||||
/**
|
||||
* 批量新增案件日志
|
||||
* @param list
|
||||
*/
|
||||
public static void batchInsertCaseLog(List<CaseLogRecord> list ){
|
||||
|
||||
caseLogRecordMapper.batchInsertRecord(list);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -1,30 +1,53 @@
|
||||
package com.ruoyi.wisdomarbitrate.utils;
|
||||
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.ruoyi.common.constant.Constants;
|
||||
import com.ruoyi.common.exception.ServiceException;
|
||||
import com.ruoyi.common.utils.StringUtils;
|
||||
import com.ruoyi.wisdomarbitrate.domain.FatchRule;
|
||||
import com.tencentcloudapi.bsca.v20210811.models.LicenseSummary;
|
||||
import com.tencentcloudapi.common.Credential;
|
||||
import com.tencentcloudapi.common.exception.TencentCloudSDKException;
|
||||
import com.tencentcloudapi.common.profile.ClientProfile;
|
||||
import com.tencentcloudapi.common.profile.HttpProfile;
|
||||
import com.tencentcloudapi.ocr.v20181119.OcrClient;
|
||||
import com.tencentcloudapi.ocr.v20181119.models.SmartStructuralOCRV2Request;
|
||||
import com.tencentcloudapi.ocr.v20181119.models.SmartStructuralOCRV2Response;
|
||||
import com.tencentcloudapi.ocr.v20181119.models.*;
|
||||
import org.json.JSONArray;
|
||||
import org.json.JSONObject;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.FileInputStream;
|
||||
import java.io.IOException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Base64;
|
||||
import java.util.List;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class OCRUtils {
|
||||
//API的SecretId
|
||||
private static final String SECRET_ID = "AKIDeEf2A8uX1HSainvvnXAc3X9ZlhtyvkMp";
|
||||
//API的SecretKey
|
||||
private static final String SECRET_KEY = "QjphKo8zkHZigT8j9PVtFPJyfIvO3d6V";
|
||||
// 仲裁申请书识别字段
|
||||
private static final String[] applicantName = {"申请人", "统一社会信用代码", "负责人", "住所", "联系地址"
|
||||
, "委托代理人", "联系电话", "电子邮件", "被申请人", "居民身份证号码", "仲裁请求", "事实和理由"};
|
||||
// 贷款合同识别字段
|
||||
private static final String[] contractName = {
|
||||
"合同编号", "甲方(贷款人)", "或委托代理人签字:", "本合同的初始贷款年利率为", "乙方确认有效的电子信箱地址为"};
|
||||
// 调解协议识别字段
|
||||
private static final String[] accordName = {"金融消费纠纷基本情况", "经调解,双方自愿达成如下协议"};
|
||||
// 授权委托书识别字段
|
||||
private static final String[] powerAttorneyName = {"职务"};
|
||||
|
||||
public static String pdfIdentifyText(String imageBase64, Integer pageNumber) {
|
||||
/**
|
||||
* pdf识别成文字
|
||||
*
|
||||
* @param imageBase64
|
||||
* @param pageNumber
|
||||
* @param fatchRules 抓取规则
|
||||
* @return
|
||||
*/
|
||||
public static String pdfIdentifyText(String imageBase64, Integer pageNumber, List<FatchRule> fatchRules) {
|
||||
StringBuilder respStr = new StringBuilder();
|
||||
try {
|
||||
// 实例化一个认证对象,入参需要传入腾讯云账户 SecretId 和 SecretKey,此处还需注意密钥对的保密
|
||||
// 代码泄露可能会导致 SecretId 和 SecretKey 泄露,并威胁账号下所有资源的安全性。以下代码示例仅供参考,建议采用更安全的方式来使用密钥,请参见:https://cloud.tencent.com/document/product/1278/85305
|
||||
@@ -39,49 +62,34 @@ public class OCRUtils {
|
||||
// 实例化要请求产品的client对象,clientProfile是可选的
|
||||
OcrClient client = new OcrClient(cred, "ap-beijing", clientProfile);
|
||||
// 实例化一个请求对象,每个接口都会对应一个request对象
|
||||
SmartStructuralOCRV2Request req = new SmartStructuralOCRV2Request();
|
||||
GeneralAccurateOCRRequest req = new GeneralAccurateOCRRequest();
|
||||
req.setImageBase64(imageBase64);
|
||||
req.setIsPdf(true);
|
||||
req.setPdfPageNumber(pageNumber.longValue());
|
||||
String[] itemNames1 = {"申请人", "统一社会信用代码", "负责人", "住所", "联系地址"
|
||||
, "委托代理人", "联系电话", "电子邮件", "被申请人", "居民身份证号码", "仲裁请求", "事实和理由"};
|
||||
req.setItemNames(itemNames1);
|
||||
// 返回的resp是一个SmartStructuralOCRV2Response的实例,与请求对象对应
|
||||
SmartStructuralOCRV2Response resp = client.SmartStructuralOCRV2(req);
|
||||
GeneralAccurateOCRResponse resp = client.GeneralAccurateOCR(req);
|
||||
// 输出json格式的字符串回包
|
||||
System.out.println(SmartStructuralOCRV2Response.toJsonString(resp));
|
||||
//解析数据
|
||||
String s = SmartStructuralOCRV2Response.toJsonString(resp);
|
||||
// 解析JSON数据
|
||||
JSONObject jsonObject = new JSONObject(s);
|
||||
JSONArray structuralList = jsonObject.getJSONArray("StructuralList");
|
||||
// 遍历StructuralList中的Groups,获取Key对应的AutoName和Value对应的AutoConten
|
||||
StringBuilder stringBuilder = new StringBuilder(); // 创建一个StringBuilder对象
|
||||
for (int i = 0; i < structuralList.length(); i++) {
|
||||
JSONArray groups = structuralList.getJSONObject(i).getJSONArray("Groups");
|
||||
for (int j = 0; j < groups.length(); j++) {
|
||||
JSONArray lines = groups.getJSONObject(j).getJSONArray("Lines");
|
||||
for (int k = 0; k < lines.length(); k++) {
|
||||
JSONObject line = lines.getJSONObject(k);
|
||||
JSONObject key = line.getJSONObject("Key");
|
||||
JSONObject value = line.getJSONObject("Value");
|
||||
String autoName = key.getString("AutoName");
|
||||
String autoContent = value.getString("AutoContent");
|
||||
String text = autoName + ":" + autoContent;
|
||||
if (stringBuilder.length() > 0) {
|
||||
stringBuilder.append(","); // 在已有内容的情况下添加逗号分隔符
|
||||
}
|
||||
stringBuilder.append(text); // 拼接当前的字符串
|
||||
}
|
||||
}
|
||||
System.out.println(GeneralAccurateOCRResponse.toJsonString(resp));
|
||||
// 获取响应内容
|
||||
TextDetection[] textDetections = resp.getTextDetections();
|
||||
if (textDetections == null || textDetections.length == 0) {
|
||||
return respStr.toString();
|
||||
}
|
||||
for (TextDetection textDetection : textDetections) {
|
||||
respStr.append(textDetection.getDetectedText());
|
||||
}
|
||||
return stringBuilder.toString(); // 获取最终的拼接结果
|
||||
} catch (TencentCloudSDKException e) {
|
||||
System.out.println(e.toString());
|
||||
throw new ServiceException("ocr识别失败");
|
||||
}
|
||||
return null;
|
||||
if (respStr.toString().endsWith(String.valueOf(pageNumber))) {
|
||||
int lastIndexOf = respStr.toString().lastIndexOf(String.valueOf(pageNumber));
|
||||
return respStr.toString().substring(0, lastIndexOf);
|
||||
}
|
||||
return respStr.toString();
|
||||
}
|
||||
public static String pdfConvertBase64(String pathUrl){
|
||||
|
||||
|
||||
public static String pdfConvertBase64(String pathUrl) {
|
||||
try {
|
||||
File file = new File(pathUrl);
|
||||
FileInputStream fileInputStream = new FileInputStream(file);
|
||||
@@ -96,4 +104,172 @@ public class OCRUtils {
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据抓取规则获取内容
|
||||
*
|
||||
* @param ocrText ocr识别的text
|
||||
* @param fatchRules 抓取规则
|
||||
* @return
|
||||
*/
|
||||
public static void fatchRuleGetContent(String ocrText, List<FatchRule> fatchRules, Map<String, String> fatchMap) {
|
||||
if (StrUtil.isEmpty(ocrText) || CollectionUtil.isEmpty(fatchRules)) {
|
||||
return;
|
||||
}
|
||||
for (FatchRule fatchRule : fatchRules) {
|
||||
// 从后往前抓取
|
||||
if (fatchRule.getFatchOrder() != null && fatchRule.getFatchOrder() == 1) {
|
||||
reverseSubstringText(ocrText, fatchRule, fatchMap,null);
|
||||
} else {
|
||||
// 从前往后抓取
|
||||
substringText(ocrText, fatchRule, fatchMap,null);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据抓取规则获取内容
|
||||
*
|
||||
* @param ocrText ocr识别的text
|
||||
* @param fatchRules 抓取规则
|
||||
* @return
|
||||
*/
|
||||
public static void fatchRuleGetContent(String ocrText, List<FatchRule> fatchRules, Map<String, String> fatchMap, Long caseId) {
|
||||
if (StrUtil.isEmpty(ocrText) || CollectionUtil.isEmpty(fatchRules)) {
|
||||
return;
|
||||
}
|
||||
for (FatchRule fatchRule : fatchRules) {
|
||||
// 从后往前抓取
|
||||
if (fatchRule.getFatchOrder() != null && fatchRule.getFatchOrder() == 1) {
|
||||
reverseSubstringText(ocrText, fatchRule, fatchMap, caseId);
|
||||
} else {
|
||||
// 从前往后抓取
|
||||
substringText(ocrText, fatchRule, fatchMap, caseId);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 正向截取字段
|
||||
*
|
||||
* @param text
|
||||
* @param fatchRule
|
||||
* @param fatchMap
|
||||
*/
|
||||
private static void substringText(String text, FatchRule fatchRule, Map<String, String> fatchMap, Long caseId) {
|
||||
String startContent = fatchRule.getStartContent();
|
||||
String endContent = fatchRule.getEndContent();
|
||||
// 开始为空结束为空
|
||||
if (StrUtil.isEmpty(startContent) && StrUtil.isEmpty(endContent)) {
|
||||
fatchMap.put(fatchRule.getColumnName(), trimStr(text));
|
||||
} else if (StrUtil.isNotEmpty(startContent) && StrUtil.isEmpty(endContent)) {
|
||||
// 开始不为空结束为空
|
||||
int startContIndex = StrUtil.ordinalIndexOf(text, startContent, fatchRule.getStartContentRepeatOrder());
|
||||
if (startContIndex != -1 && text.length() >= (startContIndex + startContent.length())) {
|
||||
String substring = text.substring(startContIndex + startContent.length());
|
||||
// 去除\n
|
||||
fatchMap.put(fatchRule.getColumnName(), trimStr(substring));
|
||||
}
|
||||
|
||||
} else if (StrUtil.isEmpty(startContent) && StrUtil.isNotEmpty(endContent)) {
|
||||
// 开始为空结束不为空
|
||||
int endContIndex = StrUtil.ordinalIndexOf(text, endContent, fatchRule.getEndContentRepeatOrder());
|
||||
if (endContIndex != -1) {
|
||||
String substring = text.substring(0, endContIndex);
|
||||
fatchMap.put(fatchRule.getColumnName(), trimStr(substring));
|
||||
}
|
||||
} else if (StrUtil.isNotEmpty(startContent) && StrUtil.isNotEmpty(endContent)) {
|
||||
// 开始结束不为空
|
||||
int startIndexOf = StrUtil.ordinalIndexOf(text, startContent, fatchRule.getStartContentRepeatOrder());
|
||||
int endIndexOf = StrUtil.ordinalIndexOf(text, endContent, fatchRule.getEndContentRepeatOrder());
|
||||
if (startIndexOf != -1 && endIndexOf != -1 && endIndexOf >= (startIndexOf + startContent.length()) && text.length() >= endIndexOf) {
|
||||
String substring = text.substring(startIndexOf + startContent.length(), endIndexOf);
|
||||
|
||||
fatchMap.put(fatchRule.getColumnName(), trimStr(substring));
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 从后往前截取字符串
|
||||
*
|
||||
* @param text
|
||||
* @param fatchRule
|
||||
* @param fatchMap
|
||||
*/
|
||||
public static void reverseSubstringText(String text, FatchRule fatchRule, Map<String, String> fatchMap, Long caseId) {
|
||||
|
||||
// 反正字符串
|
||||
String reverseText = StrUtil.reverse(text);
|
||||
// 结束截取字段
|
||||
String reverseEndContent = "";
|
||||
// 开始截取字段
|
||||
String reverseStartContent = "";
|
||||
if (StrUtil.isNotEmpty(fatchRule.getEndContent())) {
|
||||
reverseEndContent = StrUtil.reverse(fatchRule.getEndContent());
|
||||
}
|
||||
if (StrUtil.isNotEmpty(fatchRule.getStartContent())) {
|
||||
reverseStartContent = StrUtil.reverse(fatchRule.getStartContent());
|
||||
}
|
||||
// 开始和结束截取都为空
|
||||
if (StrUtil.isEmpty(reverseStartContent) && StrUtil.isEmpty(reverseEndContent)) {
|
||||
fatchMap.put(fatchRule.getColumnName(), trimStr(text));
|
||||
} else if (StrUtil.isEmpty(reverseStartContent) && StrUtil.isNotEmpty(reverseEndContent)) {
|
||||
// 开始为空,结束不为空
|
||||
// 根据截取的序号查找出位置
|
||||
int indexOf = StrUtil.ordinalIndexOf(reverseText, reverseEndContent, fatchRule.getEndContentRepeatOrder());
|
||||
if (indexOf != -1) {
|
||||
String substring = reverseText.substring(0, indexOf);
|
||||
if (StrUtil.isNotEmpty(substring)) {
|
||||
fatchMap.put(fatchRule.getColumnName(), trimStr(StrUtil.reverse(substring)));
|
||||
}
|
||||
}
|
||||
} else if (StrUtil.isNotEmpty(reverseStartContent) && StrUtil.isEmpty(reverseEndContent)) {
|
||||
// 开始不为空,结束为空
|
||||
int indexOf = StrUtil.ordinalIndexOf(reverseText, reverseStartContent, fatchRule.getStartContentRepeatOrder());
|
||||
if (indexOf != -1 && (indexOf + reverseStartContent.length() <= text.length())) {
|
||||
String substring = reverseText.substring(indexOf + reverseStartContent.length());
|
||||
if (StrUtil.isNotEmpty(substring)) {
|
||||
fatchMap.put(fatchRule.getColumnName(), trimStr(StrUtil.reverse(substring)));
|
||||
}
|
||||
}
|
||||
|
||||
} else if (StrUtil.isNotEmpty(reverseStartContent) && StrUtil.isNotEmpty(reverseEndContent)) {
|
||||
// 开始结束都不为空
|
||||
int endIndexOf = StrUtil.ordinalIndexOf(reverseText, reverseEndContent, fatchRule.getEndContentRepeatOrder());
|
||||
int startIndexOf = StrUtil.ordinalIndexOf(reverseText, reverseStartContent, fatchRule.getStartContentRepeatOrder());
|
||||
if (startIndexOf != -1 && endIndexOf != -1 && endIndexOf >= (startIndexOf + reverseStartContent.length()) && text.length() >= endIndexOf) {
|
||||
String substring = reverseText.substring(startIndexOf + reverseStartContent.length(), endIndexOf);
|
||||
if (StrUtil.isNotEmpty(substring)) {
|
||||
fatchMap.put(fatchRule.getColumnName(), trimStr(StrUtil.reverse(substring)));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 去除末尾空格
|
||||
*
|
||||
* @param substring
|
||||
* @return
|
||||
*/
|
||||
private static String trimStr(String substring) {
|
||||
if (StrUtil.isNotEmpty(substring)) {
|
||||
return StrUtil.trim(substring);
|
||||
} else {
|
||||
return "";
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package com.ruoyi.wisdomarbitrate.utils;
|
||||
|
||||
import cn.hutool.json.JSONUtil;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.google.gson.Gson;
|
||||
import com.google.gson.JsonArray;
|
||||
@@ -11,6 +13,7 @@ import com.ruoyi.common.utils.DateUtils;
|
||||
import com.ruoyi.common.utils.EsignApplicaConfig;
|
||||
import com.ruoyi.common.utils.EsignHttpHelper;
|
||||
import com.ruoyi.common.utils.SealUtil;
|
||||
import com.ruoyi.wisdomarbitrate.StringIdsReq;
|
||||
import com.ruoyi.wisdomarbitrate.domain.DeptIdentify;
|
||||
import com.ruoyi.wisdomarbitrate.domain.SealSignRecord;
|
||||
|
||||
@@ -252,7 +255,7 @@ public class SignAward {
|
||||
/* " \"availableSealIds\": [\n" +
|
||||
" \"" + availableSealId + "\"\n" +
|
||||
" ],\n" +*/
|
||||
" \"availableSealIds\": " + new Gson().toJson(sealIdList) + ",\n" +
|
||||
// " \"availableSealIds\": " + new Gson().toJson(sealIdList) + ",\n" +
|
||||
|
||||
" \"signFieldPosition\": {\n" +
|
||||
" \"positionPage\": \"" + positionPageorg + "\",\n" +
|
||||
@@ -305,6 +308,50 @@ public class SignAward {
|
||||
//发起接口请求
|
||||
return EsignHttpHelper.doCommHttp(eSignHost, apiaddr, requestType, jsonParm, header, false);
|
||||
}
|
||||
/**
|
||||
* 获取批量签页面链接
|
||||
*
|
||||
* @return
|
||||
* @throws EsignDemoException
|
||||
*/
|
||||
public static EsignHttpResponse batchSignUrl(StringIdsReq idsReq) throws EsignDemoException {
|
||||
|
||||
List<String> signFlowIds = idsReq.getIds();
|
||||
String psnAccount = idsReq.getPsnAccount();
|
||||
String apiaddr = "/v3/sign-flow/batch-sign-url";
|
||||
JSONObject paramObj = new JSONObject();
|
||||
paramObj.put("operatorId",idsReq.getPsnId());
|
||||
paramObj.put("signFlowIds",signFlowIds);
|
||||
paramObj.put("clientType","PC");
|
||||
String jsonParm = JSON.toJSONString(paramObj);
|
||||
//请求方法
|
||||
EsignRequestType requestType = EsignRequestType.POST;
|
||||
//生成请求签名鉴权方式的Header
|
||||
Map<String, String> header = EsignHttpHelper.signAndBuildSignAndJsonHeader(eSignAppId, eSignAppSecret, jsonParm, requestType.name(), apiaddr, false);
|
||||
//发起接口请求
|
||||
return EsignHttpHelper.doCommHttp(eSignHost, apiaddr, requestType, jsonParm, header, false);
|
||||
}
|
||||
/**
|
||||
* 根据手机号获取账户id
|
||||
*
|
||||
* @return
|
||||
* @throws EsignDemoException
|
||||
*/
|
||||
public static EsignHttpResponse identityInfo(StringIdsReq idsReq) throws EsignDemoException {
|
||||
|
||||
List<String> signFlowIds = idsReq.getIds();
|
||||
String psnAccount = idsReq.getPsnAccount();
|
||||
String apiaddr = "/v3/persons/identity-info?psnAccount=" +psnAccount;
|
||||
|
||||
String jsonParm = "{}";
|
||||
//请求方法
|
||||
EsignRequestType requestType = EsignRequestType.GET;
|
||||
//生成请求签名鉴权方式的Header
|
||||
Map<String, String> header = EsignHttpHelper.signAndBuildSignAndJsonHeader(eSignAppId, eSignAppSecret, jsonParm, requestType.name(), apiaddr, false);
|
||||
//发起接口请求
|
||||
return EsignHttpHelper.doCommHttp(eSignHost, apiaddr, requestType, jsonParm, header, false);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 获取合同文件用印链接
|
||||
|
||||
@@ -0,0 +1,48 @@
|
||||
package com.ruoyi.wisdomarbitrate.utils;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.FileInputStream;
|
||||
import java.io.FileOutputStream;
|
||||
import java.io.IOException;
|
||||
import java.nio.charset.Charset;
|
||||
import java.util.zip.ZipEntry;
|
||||
import java.util.zip.ZipOutputStream;
|
||||
|
||||
public class ZipFileUtils {
|
||||
|
||||
public static void main(String[] args) {
|
||||
String file1 = "F:\\testZip\\123.pdf";
|
||||
String file2 = "F:\\testZip\\456.png";
|
||||
String zipFileOutPath = "F:\\testZip\\outputfile123.zip";
|
||||
|
||||
try {
|
||||
FileOutputStream zfous = new FileOutputStream(zipFileOutPath);
|
||||
ZipOutputStream zipFileOutstream = new ZipOutputStream(zfous);
|
||||
FileInputStream fis1 = new FileInputStream(file1);
|
||||
FileInputStream fis2 = new FileInputStream(file2);
|
||||
zipFile(file1, fis1, zipFileOutstream);
|
||||
zipFile(file2, fis2, zipFileOutstream);
|
||||
|
||||
zipFileOutstream.close();
|
||||
zfous.close();
|
||||
System.out.println("文件成功打包成ZIP文件!");
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
public static void zipFile(String zipfilePath, FileInputStream zipFileinsteam, ZipOutputStream zipfileOut)
|
||||
throws IOException {
|
||||
ZipEntry zipfileEntry = new ZipEntry(new File(zipfilePath).getName());
|
||||
zipfileOut.putNextEntry(zipfileEntry);
|
||||
|
||||
// 从输入流读取数据并写入ZIP文件
|
||||
byte[] bytes = new byte[1024];
|
||||
int length;
|
||||
while ((length = zipFileinsteam.read(bytes)) >= 0) {
|
||||
zipfileOut.write(bytes, 0, length);
|
||||
}
|
||||
zipfileOut.closeEntry();
|
||||
zipFileinsteam.close();
|
||||
}
|
||||
}
|
||||
@@ -121,8 +121,41 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
sysdate()
|
||||
);
|
||||
</insert>
|
||||
|
||||
<update id="updateDept" parameterType="SysDept">
|
||||
<insert id="batchSave">
|
||||
insert into sys_dept(
|
||||
dept_id,
|
||||
parent_id,
|
||||
dept_name,
|
||||
dept_type,
|
||||
ancestors,
|
||||
order_num,
|
||||
leader,
|
||||
phone,
|
||||
email,
|
||||
status,
|
||||
create_by,
|
||||
create_time
|
||||
)values
|
||||
<foreach item="item" index="index" collection="list" separator=",">
|
||||
(
|
||||
#{item.deptId},
|
||||
#{item.parentId},
|
||||
#{item.deptName},
|
||||
#{item.deptType},
|
||||
#{item.ancestors},
|
||||
#{item.orderNum},
|
||||
#{item.leader},
|
||||
#{item.phone},
|
||||
#{item.email},
|
||||
#{item.status},
|
||||
#{item.createBy},
|
||||
sysdate()
|
||||
)
|
||||
</foreach>;
|
||||
|
||||
</insert>
|
||||
|
||||
<update id="updateDept" parameterType="SysDept">
|
||||
update sys_dept
|
||||
<set>
|
||||
<if test="parentId != null and parentId != 0">parent_id = #{parentId},</if>
|
||||
|
||||
@@ -59,8 +59,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
</sql>
|
||||
|
||||
<select id="selectUserList" parameterType="SysUser" resultMap="SysUserResult">
|
||||
select u.user_id, u.dept_id, u.nick_name, u.user_name,u.id_card, u.email, u.avatar, u.phonenumber, u.sex, u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark, d.dept_name, d.leader from sys_user u
|
||||
select u.user_id, u.dept_id, u.nick_name, u.user_name,u.id_card, u.email, u.avatar, u.phonenumber, u.sex, u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark, d.dept_name,
|
||||
d.leader , r.role_id, r.role_name, d.dept_id
|
||||
from sys_user u
|
||||
left join sys_dept d on u.dept_id = d.dept_id
|
||||
left join sys_user_role ur on u.user_id = ur.user_id
|
||||
left join sys_role r on r.role_id = ur.role_id
|
||||
where u.del_flag = '0'
|
||||
<if test="userId != null and userId != 0">
|
||||
AND u.user_id = #{userId}
|
||||
@@ -244,8 +248,44 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
sysdate()
|
||||
)
|
||||
</insert>
|
||||
|
||||
<update id="updateUser" parameterType="SysUser">
|
||||
<insert id="batchSave">
|
||||
insert into sys_user(
|
||||
user_id,
|
||||
dept_id,
|
||||
user_name,
|
||||
nick_name,
|
||||
id_card,
|
||||
email,
|
||||
avatar,
|
||||
phonenumber,
|
||||
sex,
|
||||
password,
|
||||
status,
|
||||
create_by,
|
||||
remark,
|
||||
create_time
|
||||
)values
|
||||
<foreach item="item" index="index" collection="list" separator=",">
|
||||
(
|
||||
#{item.userId},
|
||||
#{item.deptId},
|
||||
#{item.userName},
|
||||
#{item.nickName},
|
||||
#{item.idCard},
|
||||
#{item.email},
|
||||
#{item.avatar},
|
||||
#{item.phonenumber},
|
||||
#{item.sex},
|
||||
#{item.password},
|
||||
#{item.status},
|
||||
#{item.createBy},
|
||||
#{item.remark},
|
||||
sysdate()
|
||||
)
|
||||
</foreach>;
|
||||
</insert>
|
||||
|
||||
<update id="updateUser" parameterType="SysUser">
|
||||
update sys_user
|
||||
<set>
|
||||
<if test="deptId != null and deptId != 0">dept_id = #{deptId},</if>
|
||||
|
||||
@@ -14,6 +14,10 @@
|
||||
<result property="verificaOpinion" column="verifica_opinion" />
|
||||
<result property="checkOpinion" column="check_opinion" />
|
||||
<result property="annexId" column="annex_id" />
|
||||
<result property="caseFocus" column="case_focus" />
|
||||
<result property="caseFacts" column="case_facts" />
|
||||
<result property="respondentOpinion" column="respondent_opinion" />
|
||||
<result property="applicantOpinion" column="applicant_opinion" />
|
||||
|
||||
</resultMap>
|
||||
|
||||
@@ -28,7 +32,13 @@
|
||||
<if test="arbitrateThink != null and arbitrateThink != ''">arbitrate_think,</if>
|
||||
|
||||
<if test="checkOpinion != null and checkOpinion != ''">check_opinion,</if>
|
||||
<if test="caseCheckReject != null and caseCheckReject != ''">case_check_reject,</if>
|
||||
<if test="arbitrateReject != null and arbitrateReject != ''">arbitrate_reject,</if>
|
||||
<if test="createBy != null and createBy != ''">create_by,</if>
|
||||
case_focus,
|
||||
case_facts,
|
||||
respondent_opinion,
|
||||
applicant_opinion,
|
||||
create_time
|
||||
)values(
|
||||
<if test="caseAppliId != null ">#{caseAppliId},</if>
|
||||
@@ -39,7 +49,13 @@
|
||||
<if test="verificaOpinion != null and verificaOpinion != ''">#{verificaOpinion},</if>
|
||||
<if test="arbitrateThink != null and arbitrateThink != ''">#{arbitrateThink},</if>
|
||||
<if test="checkOpinion != null and checkOpinion != ''">#{checkOpinion},</if>
|
||||
<if test="caseCheckReject != null and caseCheckReject != ''">#{caseCheckReject},</if>
|
||||
<if test="arbitrateReject != null and arbitrateReject != ''">#{arbitrateReject},</if>
|
||||
<if test="createBy != null and createBy != ''">#{createBy},</if>
|
||||
#{caseFocus},
|
||||
#{caseFacts},
|
||||
#{respondentOpinion},
|
||||
#{applicantOpinion},
|
||||
sysdate()
|
||||
)
|
||||
</insert>
|
||||
@@ -55,8 +71,16 @@
|
||||
<if test="rulingFollows != null and rulingFollows != ''">ruling_follows = #{rulingFollows},</if>
|
||||
<if test="verificaOpinion != null and verificaOpinion != ''">verifica_opinion = #{verificaOpinion},</if>
|
||||
<if test="checkOpinion != null and checkOpinion != ''">check_opinion = #{checkOpinion},</if>
|
||||
<if test="arbitraCheckOpinion != null and arbitraCheckOpinion != ''">arbitra_check_opinion = #{arbitraCheckOpinion},</if>
|
||||
<if test="annexId != null ">annex_id = #{annexId},</if>
|
||||
<if test="updateBy != null and updateBy != ''">update_by = #{updateBy},</if>
|
||||
<if test="caseFocus != null and caseFocus != ''">case_focus = #{caseFocus},</if>
|
||||
<if test="caseFacts != null and caseFacts != ''">case_facts = #{caseFacts},</if>
|
||||
<if test="respondentOpinion != null and respondentOpinion != ''">respondent_opinion = #{respondentOpinion},</if>
|
||||
<if test="applicantOpinion != null and applicantOpinion != ''">applicant_opinion = #{applicantOpinion},</if>
|
||||
<if test="caseCheckReject != null and caseCheckReject != ''">case_check_reject = #{caseCheckReject},</if>
|
||||
<if test="arbitrateReject != null and arbitrateReject != ''">arbitrate_reject = #{arbitrateReject},</if>
|
||||
<if test="deptorReject != null and deptorReject != ''">deptor_reject = #{deptorReject},</if>
|
||||
update_time = sysdate()
|
||||
</set>
|
||||
where id = #{id}
|
||||
@@ -65,7 +89,8 @@
|
||||
|
||||
<select id="selectArbitrateRecord" parameterType="ArbitrateRecord" resultMap="ArbitrateRecordResult">
|
||||
SELECT a.id ,a.case_appli_id ,a.eviden_determi ,a.fact_determi ,a.case_sketch ,a.arbitrate_think ,a.ruling_follows ,
|
||||
a.verifica_opinion ,a.check_opinion,a.annex_id
|
||||
a.verifica_opinion ,a.check_opinion,a.annex_id,a.case_focus,a.case_facts,a.respondent_opinion,a.applicant_opinion,
|
||||
a.case_check_reject ,a.arbitrate_reject,a.deptor_reject
|
||||
from arbitrate_record a
|
||||
<where>
|
||||
<if test="caseAppliId != null ">
|
||||
|
||||
@@ -33,6 +33,7 @@
|
||||
<result property="email" column="email" />
|
||||
<result property="sendEmail" column="send_email" />
|
||||
<result property="applicantAgentUserId" column="applicant_agent_user_id" />
|
||||
<result property="agentEmail" column="agent_email" />
|
||||
</resultMap>
|
||||
|
||||
<select id="selectCaseAffiliate" parameterType="CaseAffiliate" resultMap="CaseAffiliateResult">
|
||||
@@ -66,7 +67,7 @@
|
||||
contact_address,work_address,work_telphone ,name_agent,identity_num_agent,contact_telphone_agent,
|
||||
comp_legal_person,comp_legalper_post,respon_sex ,respon_birth,
|
||||
residen_affili,appli_agent_title,
|
||||
contact_address_agent,email , send_email,track_num,applicant_agent_user_id) values
|
||||
contact_address_agent,email , send_email,track_num,applicant_agent_user_id,agent_email) values
|
||||
<foreach item="item" index="index" collection="list" separator=",">
|
||||
(#{item.caseAppliLogId},#{item.identityType},#{item.applicationOrganId},#{item.applicationOrganName},#{item.name},#{item.identityNum},#{item.contactTelphone},
|
||||
#{item.contactAddress},#{item.workAddress},#{item.workTelphone}, #{item.nameAgent},#{item.identityNumAgent},#{item.contactTelphoneAgent},
|
||||
@@ -76,9 +77,10 @@
|
||||
#{item.email},
|
||||
#{item.sendEmail},
|
||||
#{item.trackNum},
|
||||
#{item.applicantAgentUserId}
|
||||
#{item.applicantAgentUserId},
|
||||
#{item.agentEmail}
|
||||
)
|
||||
</foreach>
|
||||
</foreach>;
|
||||
</insert>
|
||||
|
||||
|
||||
@@ -113,6 +115,9 @@
|
||||
residen_affili=#{residenAffili},
|
||||
appli_agent_title=#{appliAgentTitle}
|
||||
|
||||
<if test="agentEmail !=null and agentEmail!=''">
|
||||
,agent_email=#{agentEmail}
|
||||
</if>
|
||||
where id = #{id}
|
||||
|
||||
</update>
|
||||
|
||||
@@ -33,10 +33,16 @@
|
||||
<result property="email" column="email" />
|
||||
<result property="sendEmail" column="send_email" />
|
||||
<result property="applicantAgentUserId" column="applicant_agent_user_id" />
|
||||
<result property="agentEmail" column="agent_email" />
|
||||
</resultMap>
|
||||
|
||||
<select id="selectCaseAffiliate" parameterType="CaseAffiliate" resultMap="CaseAffiliateResult">
|
||||
select c.*,s.user_id
|
||||
select distinct (c.id),
|
||||
c.case_appli_id, c.identity_type,c.application_organ_id,c.application_organ_name,c.name,c.identity_num,c.contact_telphone,
|
||||
c.contact_address,c.work_address,c.work_telphone ,c.name_agent,c.identity_num_agent,c.contact_telphone_agent,
|
||||
c.comp_legal_person,c.comp_legalper_post,c.respon_sex ,c.respon_birth,
|
||||
c.residen_affili,appli_agent_title,
|
||||
c.contact_address_agent,c.email, c.send_email,c.track_num,c.applicant_agent_user_id,c.agent_email,s.user_id
|
||||
from case_affiliate c
|
||||
left join sys_user s on c.identity_num=s.id_card
|
||||
<where>
|
||||
@@ -46,7 +52,12 @@
|
||||
</where>
|
||||
</select>
|
||||
<select id="selectCaseAffiliateByCaseIds" resultMap="CaseAffiliateResult">
|
||||
select c.*,s.user_id
|
||||
select (c.id),
|
||||
c.case_appli_id, c.identity_type,c.application_organ_id,c.application_organ_name,c.name,c.identity_num,c.contact_telphone,
|
||||
c.contact_address,c.work_address,c.work_telphone ,c.name_agent,c.identity_num_agent,c.contact_telphone_agent,
|
||||
c.comp_legal_person,c.comp_legalper_post,c.respon_sex ,c.respon_birth,
|
||||
c.residen_affili,appli_agent_title,
|
||||
c.contact_address_agent,c.email, c.send_email,c.track_num,c.applicant_agent_user_id,c.agent_email,s.user_id
|
||||
from case_affiliate c
|
||||
left join sys_user s on c.identity_num=s.id_card
|
||||
<where>
|
||||
@@ -83,7 +94,7 @@
|
||||
contact_address,work_address,work_telphone ,name_agent,identity_num_agent,contact_telphone_agent,
|
||||
comp_legal_person,comp_legalper_post,respon_sex ,respon_birth,
|
||||
residen_affili,appli_agent_title,
|
||||
contact_address_agent,email, send_email,track_num,applicant_agent_user_id) values
|
||||
contact_address_agent,email, send_email,track_num,applicant_agent_user_id,agent_email) values
|
||||
<foreach item="item" index="index" collection="list" separator=",">
|
||||
(#{item.caseAppliId},#{item.identityType},#{item.applicationOrganId},#{item.applicationOrganName},#{item.name},#{item.identityNum},#{item.contactTelphone},
|
||||
#{item.contactAddress},#{item.workAddress},#{item.workTelphone}, #{item.nameAgent},#{item.identityNumAgent},#{item.contactTelphoneAgent},
|
||||
@@ -93,7 +104,8 @@
|
||||
#{item.email},
|
||||
#{item.sendEmail},
|
||||
#{item.trackNum},
|
||||
#{item.applicantAgentUserId}
|
||||
#{item.applicantAgentUserId},
|
||||
#{item.agentEmail}
|
||||
)
|
||||
</foreach>
|
||||
</insert>
|
||||
@@ -128,6 +140,10 @@
|
||||
respon_birth=#{responBirth},
|
||||
residen_affili=#{residenAffili},
|
||||
appli_agent_title=#{appliAgentTitle}
|
||||
|
||||
<if test="agentEmail !=null and agentEmail!=''">
|
||||
,agent_email=#{agentEmail}
|
||||
</if>
|
||||
where id = #{id}
|
||||
|
||||
</update>
|
||||
@@ -161,6 +177,10 @@
|
||||
respon_birth=#{item.responBirth},
|
||||
residen_affili=#{item.residenAffili},
|
||||
appli_agent_title=#{item.appliAgentTitle}
|
||||
|
||||
<if test="agentEmail !=null and agentEmail!=''">
|
||||
,agent_email=#{agentEmail}
|
||||
</if>
|
||||
</set>
|
||||
where case_appli_id = #{caseAppliId} and identity_type= #{item.identityType};
|
||||
</foreach>
|
||||
|
||||
+137
-14
@@ -49,9 +49,18 @@
|
||||
<result property="version" column="version" />
|
||||
<result property="updateSubmitStatus" column="update_submit_status" />
|
||||
<result property="properPreser" column="proper_preser" />
|
||||
<result property="interestRate" column="interest_rate" />
|
||||
<result property="outstandingMoney" column="outstanding_money" />
|
||||
<result property="facts" column="facts" />
|
||||
<result property="partyA" column="party_a" />
|
||||
<result property="disputes" column="disputes" />
|
||||
<result property="loanType" column="loan_type" />
|
||||
<result property="loanTerm" column="loan_term" />
|
||||
<result property="mediationAgreement" column="mediation_agreement" />
|
||||
</resultMap>
|
||||
<insert id="insert" parameterType="com.ruoyi.wisdomarbitrate.domain.CaseApplication" useGeneratedKeys="true" keyProperty="id">
|
||||
insert into case_application_log(
|
||||
<if test="caseLogId != null ">id ,</if>
|
||||
<if test="caseAppliId != null ">case_appli_id ,</if>
|
||||
<if test="caseName != null and caseName != ''">case_name ,</if>
|
||||
<if test="caseNum != null and caseNum != ''">case_num,</if>
|
||||
@@ -71,8 +80,17 @@
|
||||
<if test="version != null ">version,</if>
|
||||
<if test="updateSubmitStatus != null ">update_submit_status,</if>
|
||||
<if test="properPreser != null ">proper_preser,</if>
|
||||
interest_rate,
|
||||
outstanding_money,
|
||||
facts,
|
||||
party_a,
|
||||
disputes,
|
||||
loan_type,
|
||||
loan_term,
|
||||
mediation_agreement,
|
||||
create_time
|
||||
)values(
|
||||
<if test="caseLogId != null ">#{id} ,</if>
|
||||
<if test="caseAppliId != null">#{caseAppliId},</if>
|
||||
<if test="caseName != null and caseName != ''">#{caseName},</if>
|
||||
<if test="caseNum != null and caseNum != ''">#{caseNum},</if>
|
||||
@@ -92,9 +110,79 @@
|
||||
<if test="version != null ">#{version},</if>
|
||||
<if test="updateSubmitStatus != null ">#{updateSubmitStatus},</if>
|
||||
<if test="properPreser != null ">#{properPreser},</if>
|
||||
#{interestRate},
|
||||
#{outstandingMoney},
|
||||
#{facts},
|
||||
#{partyA},
|
||||
#{disputes},
|
||||
#{loanType},
|
||||
#{loanTerm},
|
||||
#{mediationAgreement},
|
||||
sysdate()
|
||||
)
|
||||
</insert>
|
||||
<insert id="batchSave">
|
||||
insert into case_application_log(
|
||||
id,
|
||||
case_appli_id ,
|
||||
case_name ,
|
||||
case_num,
|
||||
case_subject_amount,
|
||||
arbitrat_claims,
|
||||
request_rule,
|
||||
loan_start_date,
|
||||
loan_end_date,
|
||||
claim_princi_owed,
|
||||
claim_interest_owed,
|
||||
claim_liquid_damag,
|
||||
fee_payable,
|
||||
contract_number,
|
||||
create_by,
|
||||
version,
|
||||
update_submit_status,
|
||||
proper_preser,
|
||||
interest_rate,
|
||||
outstanding_money,
|
||||
facts,
|
||||
party_a,
|
||||
disputes,
|
||||
loan_type,
|
||||
loan_term,
|
||||
mediation_agreement,
|
||||
create_time
|
||||
)values
|
||||
<foreach item="item" index="index" collection="list" separator=",">
|
||||
(
|
||||
id=#{item.id},
|
||||
#{item.caseAppliId},
|
||||
#{item.caseName},
|
||||
#{item.caseNum},
|
||||
#{item.caseSubjectAmount},
|
||||
#{item.arbitratClaims},
|
||||
#{item.requestRule},
|
||||
#{item.loanStartDate},
|
||||
#{item.loanEndDate},
|
||||
#{item.claimPrinciOwed},
|
||||
#{item.claimInterestOwed},
|
||||
#{item.claimLiquidDamag},
|
||||
#{item.feePayable},
|
||||
#{item.contractNumber},
|
||||
#{item.createBy},
|
||||
#{item.version},
|
||||
#{item.updateSubmitStatus},
|
||||
#{item.properPreser},
|
||||
#{item.interestRate},
|
||||
#{item.outstandingMoney},
|
||||
#{item.facts},
|
||||
#{item.partyA},
|
||||
#{item.disputes},
|
||||
#{item.loanType},
|
||||
#{item.loanTerm},
|
||||
#{item.mediationAgreement},
|
||||
sysdate()
|
||||
)
|
||||
</foreach>
|
||||
</insert>
|
||||
<update id="updateStatus">
|
||||
update case_application_log
|
||||
|
||||
@@ -114,26 +202,41 @@
|
||||
WHERE id = #{id}
|
||||
</delete>
|
||||
<delete id="batchDeleteLog">
|
||||
delete a from case_affiliate_log a
|
||||
join case_application_log l on l.id=a.case_appli_log_id
|
||||
where l.id in (
|
||||
<foreach collection="ids" item="id" separator=",">
|
||||
#{id}
|
||||
</foreach>
|
||||
);
|
||||
|
||||
delete from case_application_log l where l.id in (
|
||||
<foreach collection="ids" item="id" separator=",">
|
||||
#{id}
|
||||
delete from case_application_log l where l.id in
|
||||
<foreach collection="ids" item="item" open="(" separator="," close=")">
|
||||
#{item}
|
||||
</foreach>
|
||||
);
|
||||
;
|
||||
delete from case_affiliate_log l where l.case_appli_log_id in
|
||||
<foreach collection="ids" item="item" open="(" separator="," close=")">
|
||||
#{item}
|
||||
</foreach>
|
||||
;
|
||||
delete from case_attach_log l where l.case_appli_log_id in
|
||||
<foreach collection="ids" item="item" open="(" separator="," close=")">
|
||||
#{item}
|
||||
</foreach>
|
||||
;
|
||||
delete from column_value_log l where l.case_appli_log_id in
|
||||
<foreach collection="ids" item="item" open="(" separator="," close=")">
|
||||
#{item}
|
||||
</foreach>
|
||||
;
|
||||
</delete>
|
||||
|
||||
|
||||
<select id="selectByCaseIdAndVersion" resultMap="CaseApplicationResult">
|
||||
SELECT case_appli_id id,id caseLogId,case_appli_id caseAppliId ,case_name,case_num,case_subject_amount,arbitrat_claims,request_rule,loan_start_date,
|
||||
loan_end_date,claim_princi_owed,claim_interest_owed,claim_liquid_damag,fee_payable,contract_number,
|
||||
create_by,version,update_submit_status,create_time,proper_preser
|
||||
create_by,version,update_submit_status,create_time,proper_preser, interest_rate,
|
||||
outstanding_money,
|
||||
facts,
|
||||
party_a,
|
||||
disputes,
|
||||
loan_type,
|
||||
loan_term,
|
||||
mediation_agreement
|
||||
FROM case_application_log
|
||||
WHERE case_appli_id = #{caseAppliId} and version=#{version}
|
||||
</select>
|
||||
@@ -141,7 +244,14 @@
|
||||
<select id="selectLatestCase" resultMap="CaseApplicationResult">
|
||||
SELECT id caseLogId,case_appli_id caseAppliId ,case_name,case_num,case_subject_amount,arbitrat_claims,request_rule,loan_start_date,
|
||||
loan_end_date,claim_princi_owed,claim_interest_owed,claim_liquid_damag,fee_payable,contract_number,
|
||||
create_by,version,update_submit_status,create_time,proper_preser
|
||||
create_by,version,update_submit_status,create_time,proper_preser, interest_rate,
|
||||
outstanding_money,
|
||||
facts,
|
||||
party_a,
|
||||
disputes,
|
||||
loan_type,
|
||||
loan_term,
|
||||
mediation_agreement
|
||||
FROM case_application_log
|
||||
WHERE case_appli_id = #{caseAppliId} ORDER BY version DESC limit 1
|
||||
</select>
|
||||
@@ -159,10 +269,23 @@
|
||||
<select id="selectBeforeCase" resultMap="CaseApplicationResult">
|
||||
SELECT case_appli_id id,id caseLogId,case_appli_id caseAppliId ,case_name,case_num,case_subject_amount,arbitrat_claims,request_rule,loan_start_date,
|
||||
loan_end_date,claim_princi_owed,claim_interest_owed,claim_liquid_damag,fee_payable,contract_number,
|
||||
create_by,version,update_submit_status,create_time,proper_preser
|
||||
create_by,version,update_submit_status,create_time,proper_preser, interest_rate,
|
||||
outstanding_money,
|
||||
facts,
|
||||
party_a,
|
||||
disputes,
|
||||
loan_type,
|
||||
loan_term,
|
||||
mediation_agreement
|
||||
FROM case_application_log
|
||||
WHERE case_appli_id = #{caseId} and version < #{version} and update_submit_status not in ( 4, 5 ) order by version desc limit 1
|
||||
</select>
|
||||
<select id="selectLogsByCaseIds" resultType="java.lang.Long">
|
||||
select id from case_application_log where case_appli_id in
|
||||
<foreach collection="ids" item="item" separator="," open="(" close=")">
|
||||
#{item}
|
||||
</foreach>
|
||||
</select>
|
||||
|
||||
|
||||
</mapper>
|
||||
+666
-779
File diff suppressed because it is too large
Load Diff
@@ -19,6 +19,13 @@
|
||||
INSERT INTO case_attach_log (case_appli_log_id, annex_id,annex_name, annex_path , annex_type,note,use_id,use_account,seal_status)
|
||||
VALUES (#{caseAppliLogId},#{annexId}, #{annexName}, #{annexPath},#{annexType},#{note},#{userId},#{userName},#{sealStatus})
|
||||
</insert>
|
||||
<insert id="batchSave">
|
||||
INSERT INTO case_attach_log (case_appli_log_id, annex_id,annex_name, annex_path , annex_type,note,use_id,use_account,seal_status)
|
||||
VALUES
|
||||
<foreach item="item" index="index" collection="list" separator=",">
|
||||
(#{item.caseAppliLogId},#{item.annexId}, #{item.annexName}, #{item.annexPath},#{item.annexType},#{item.note},#{item.userId},#{item.userName},#{item.sealStatus})
|
||||
</foreach>
|
||||
</insert>
|
||||
<delete id="deleteByFileIds">
|
||||
delete from case_attach_log
|
||||
where annex_id in
|
||||
|
||||
@@ -18,6 +18,15 @@
|
||||
INSERT INTO case_attach (case_appli_id, annex_name, annex_path , annex_type,note,use_id,use_account,seal_status,is_batch_upload)
|
||||
VALUES (#{caseAppliId}, #{annexName}, #{annexPath},#{annexType},#{note},#{userId},#{userName},#{sealStatus},#{isBatchUpload})
|
||||
</insert>
|
||||
<insert id="batchSave" useGeneratedKeys="true" keyProperty="annexId">
|
||||
INSERT INTO case_attach (case_appli_id, annex_name, annex_path , annex_type,note,use_id,use_account,seal_status,is_batch_upload)
|
||||
VALUES
|
||||
<foreach item="item" index="index" collection="list" separator=",">
|
||||
|
||||
|
||||
(#{item.caseAppliId}, #{item.annexName}, #{item.annexPath},#{item.annexType},#{item.note},#{item.userId},#{item.userName},#{item.sealStatus},#{item.isBatchUpload})
|
||||
</foreach>
|
||||
</insert>
|
||||
<delete id="deleteByFileIds">
|
||||
delete from case_attach
|
||||
where annex_id in
|
||||
@@ -53,6 +62,12 @@
|
||||
</where>
|
||||
</select>
|
||||
|
||||
<delete id="deleteCaseAttachByCasedIdAndType">
|
||||
delete from case_attach
|
||||
where case_appli_id = #{caseAppliId}
|
||||
and annex_type = #{annexType}
|
||||
</delete>
|
||||
|
||||
<select id="queryCaseAttachList" resultMap="CaseAttachResult">
|
||||
select annex_id,case_appli_id,annex_name,annex_path,annex_type,note,use_id,use_account
|
||||
from case_attach
|
||||
|
||||
@@ -20,17 +20,26 @@
|
||||
#{caseAppliId},#{caseNode},sysdate(),#{notes},#{createBy},#{createNickName},sysdate(),#{updateBy},sysdate()
|
||||
)
|
||||
</insert>
|
||||
<insert id="batchInsertRecord">
|
||||
insert into case_log_record(case_appli_id, case_node,case_node_time,notes,create_by,create_nick_name,create_time,update_by,update_time ) values
|
||||
<foreach item="item" index="index" collection="list" separator=",">
|
||||
(
|
||||
#{item.caseAppliId},#{item.caseNode},sysdate(),#{item.notes},#{item.createBy},#{item.createNickName},sysdate(),#{item.updateBy},sysdate()
|
||||
)
|
||||
</foreach>
|
||||
</insert>
|
||||
<select id="selectCaseLogRecordList" resultType="com.ruoyi.wisdomarbitrate.domain.CaseLogRecord">
|
||||
select cl.case_node caseNode ,cl.case_node_time caseNodeTime ,cl.notes ,cl.id ,cl.case_appli_id caseAppliId,
|
||||
cl.create_by createBy,cl.create_nick_name createNickName,cl.create_time createTime,cl.update_by updateBy,cl.update_time updateTime,
|
||||
CASE cl.case_node when 0 then '立案申请' when 1 then '提交立案申请' when 2 then '立案审查'
|
||||
when 3 then '支付成功' when 4 then '缴费确认' when 5 then '案件质证'
|
||||
when 6 then '组庭审核' when 7 then '组庭确认' when 8 then '当前仲裁方式为开庭审理'
|
||||
when 9 then '当前仲裁方式为书面审理' when 10 then '书面审理' when 11 then '生成裁決书'
|
||||
when 12 then '核验裁决书' when 13 then '同意裁决书' when 14 then '签名成功'
|
||||
when 9 then '当前仲裁方式为书面审理' when 10 then '书面审理' when 11 then '秘书审核裁决书'
|
||||
when 12 then '部门长核验裁决书' when 13 then '同意裁决书' when 14 then '签名成功'
|
||||
when 15 then '用印成功' when 16 then '送达仲裁文书' when 17 then '案件归档'
|
||||
when 26 then '证据确认成功'
|
||||
when 31 then '修改开庭时间'
|
||||
when 18 then '仲裁员审核仲裁文书'
|
||||
ELSE '无案件状态'
|
||||
END content,
|
||||
CASE cl.case_node when 0 then '申请人' when 1 then '申请人' when 2 then '法律顾问'
|
||||
|
||||
@@ -0,0 +1,105 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper
|
||||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.ruoyi.wisdomarbitrate.mapper.CaseNumRuleMapper">
|
||||
<resultMap id="BaseResultMap" type="com.ruoyi.wisdomarbitrate.domain.CaseNumRule" >
|
||||
<result column="id" property="id" />
|
||||
<result column="rule_type" property="ruleType" />
|
||||
<result column="prefixstr" property="prefixstr" />
|
||||
<result column="date_format" property="dateFormat" />
|
||||
<result column="dept_name" property="deptName" />
|
||||
<result column="current_num" property="currentNum" />
|
||||
<result column="dept_name_firchar" property="deptNameFirchar" />
|
||||
</resultMap>
|
||||
|
||||
<insert id="insertCaseNumRule" parameterType="CaseNumRule" useGeneratedKeys="true" keyProperty="id">
|
||||
insert into case_num_rule(
|
||||
<if test="ruleType != null">rule_type,</if>
|
||||
<if test="prefixstr != null and prefixstr != '' ">prefixstr,</if>
|
||||
<if test="dateFormat != null">date_format,</if>
|
||||
<if test="deptName != null and deptName != '' ">dept_name,</if>
|
||||
<if test="currentNum != null and currentNum != '' ">current_num,</if>
|
||||
<if test="deptNameFirchar != null and deptNameFirchar != '' ">dept_name_firchar,</if>
|
||||
create_by,
|
||||
create_time
|
||||
)values(
|
||||
<if test="ruleType != null">#{ruleType},</if>
|
||||
<if test="prefixstr != null and prefixstr != '' ">#{prefixstr},</if>
|
||||
<if test="dateFormat != null">#{dateFormat},</if>
|
||||
<if test="deptName != null and deptName != '' ">#{deptName},</if>
|
||||
<if test="currentNum != null and currentNum != '' ">#{currentNum},</if>
|
||||
<if test="deptNameFirchar != null and deptNameFirchar != '' ">#{deptNameFirchar},</if>
|
||||
#{createBy},
|
||||
sysdate()
|
||||
)
|
||||
</insert>
|
||||
|
||||
<update id="updateCaseNumRule" parameterType="CaseNumRule">
|
||||
update case_num_rule
|
||||
<set>
|
||||
<if test="ruleType != null">rule_type = #{ruleType},</if>
|
||||
<if test="prefixstr != null and prefixstr != '' ">prefixstr = #{prefixstr},</if>
|
||||
<if test="dateFormat != null ">date_format = #{dateFormat},</if>
|
||||
<if test="deptName != null and deptName != '' ">dept_name = #{deptName},</if>
|
||||
<if test="currentNum != null and currentNum != '' ">current_num = #{currentNum},</if>
|
||||
<if test="deptNameFirchar != null and deptNameFirchar != '' ">dept_name_firchar = #{deptNameFirchar},</if>
|
||||
</set>
|
||||
<where>
|
||||
<if test="id != null">
|
||||
AND id = #{id}
|
||||
</if>
|
||||
</where>
|
||||
</update>
|
||||
<delete id="deleteCaseNumRule" parameterType="CaseNumRule">
|
||||
delete from case_num_rule where id = #{id}
|
||||
</delete>
|
||||
|
||||
<select id="selectCaseNumRules" parameterType="CaseNumRule" resultMap="BaseResultMap">
|
||||
SELECT id, rule_type ,prefixstr , date_format,dept_name,dept_name_firchar,current_num
|
||||
FROM case_num_rule
|
||||
<where>
|
||||
<if test="deptNameFirchar != null and deptNameFirchar != ''">
|
||||
AND dept_name_firchar = #{deptNameFirchar}
|
||||
</if>
|
||||
</where>
|
||||
order by create_time desc
|
||||
</select>
|
||||
|
||||
|
||||
|
||||
<select id="countCaseNumRule" resultType="Integer">
|
||||
select count(1) from case_num_rule c
|
||||
<where>
|
||||
<if test="prefixstr != null and prefixstr != '' ">
|
||||
AND c.prefixstr = #{prefixstr}
|
||||
</if>
|
||||
<if test="ruleType != null ">
|
||||
AND c.rule_type = #{ruleType}
|
||||
</if>
|
||||
<if test="dateFormat != null ">
|
||||
AND c.date_format = #{dateFormat}
|
||||
</if>
|
||||
<if test="deptName != null and deptName != '' ">
|
||||
AND c.dept_name = #{deptName}
|
||||
</if>
|
||||
<if test="deptNameFirchar != null and deptNameFirchar != '' ">
|
||||
AND c.dept_name_firchar = #{deptNameFirchar}
|
||||
</if>
|
||||
|
||||
</where>
|
||||
</select>
|
||||
|
||||
<select id="selectCaseNumRule" parameterType="CaseNumRule" resultMap="BaseResultMap">
|
||||
SELECT id, rule_type ,prefixstr , date_format,dept_name,dept_name_firchar,current_num
|
||||
FROM case_num_rule
|
||||
<where>
|
||||
<if test="id != null ">
|
||||
AND id = #{id}
|
||||
</if>
|
||||
</where>
|
||||
</select>
|
||||
|
||||
|
||||
|
||||
</mapper>
|
||||
@@ -27,13 +27,20 @@
|
||||
<if test="updateTime != null ">update_time = #{updateTime},</if>
|
||||
<if test="payType != null ">pay_type = #{payType},</if>
|
||||
</set>
|
||||
where id = #{id}
|
||||
<where>
|
||||
<if test="caseId != null ">
|
||||
AND case_id = #{caseId}
|
||||
</if>
|
||||
<if test="id != null ">
|
||||
AND id = #{id}
|
||||
</if>
|
||||
</where>
|
||||
</update>
|
||||
<select id="queryRecord" resultType="com.ruoyi.wisdomarbitrate.domain.CasePaymentRecord" resultMap="CasePaymentRecordResult">
|
||||
select c.id ,c.case_id ,c.order_number ,c.payment_time ,c.create_time ,c.update_time ,c.payment_status
|
||||
from case_payment_record c
|
||||
<where>
|
||||
<if test="orderNumber != null ">
|
||||
<if test="orderNumber != null and orderNumber != '' ">
|
||||
AND c.order_number = #{orderNumber}
|
||||
</if>
|
||||
</where>
|
||||
|
||||
@@ -0,0 +1,50 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper
|
||||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.ruoyi.wisdomarbitrate.mapper.ColumnValueLogMapper">
|
||||
<resultMap id="BaseResultMap" type="com.ruoyi.wisdomarbitrate.domain.vo.ColumnValue" >
|
||||
<result column="id" property="id" />
|
||||
<result column="column" property="column" />
|
||||
<result column="name" property="name" />
|
||||
<result column="value" property="value" />
|
||||
<result column="case_appli_log_id" property="caseAppliLogId" />
|
||||
</resultMap>
|
||||
<insert id="batchSave">
|
||||
INSERT INTO column_value_log ( `COLUMN`, `NAME`, `VALUE`, case_appli_log_id,is_default )
|
||||
values
|
||||
<foreach item="item" index="index" collection="list" separator=",">
|
||||
|
||||
(#{item.column},#{item.name},#{item.value},#{item.caseAppliLogId},#{item.isDefault})
|
||||
</foreach>
|
||||
</insert>
|
||||
<select id="listBycaseAppliLogId" resultMap="BaseResultMap">
|
||||
select * from column_value_log where case_appli_log_id=#{caseAppliLogId}
|
||||
</select>
|
||||
<update id="batchUpdate">
|
||||
<foreach collection="list" item="item" >
|
||||
update column_value_log
|
||||
<set>
|
||||
<if test="item.value != null and item.value != ''">
|
||||
`VALUE` = #{item.value},
|
||||
</if>
|
||||
`id`=#{item.id}
|
||||
</set>
|
||||
where `COLUMN`=#{item.column} and `NAME`=#{item.name} and case_appli_log_id=#{item.caseAppliLogId};
|
||||
</foreach>
|
||||
</update>
|
||||
<select id="queryColumnValueList" parameterType="ColumnValue" resultMap="BaseResultMap">
|
||||
select * from column_value_log c
|
||||
<where>
|
||||
<if test="caseAppliLogId != null">
|
||||
AND c.case_appli_log_id = #{caseAppliLogId}
|
||||
</if>
|
||||
<if test="isDefault != null">
|
||||
AND c.is_default = #{isDefault}
|
||||
</if>
|
||||
|
||||
</where>
|
||||
</select>
|
||||
|
||||
|
||||
</mapper>
|
||||
@@ -0,0 +1,62 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper
|
||||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.ruoyi.wisdomarbitrate.mapper.ColumnValueMapper">
|
||||
<resultMap id="BaseResultMap" type="com.ruoyi.wisdomarbitrate.domain.vo.ColumnValue" >
|
||||
<result column="id" property="id" />
|
||||
<result column="column" property="column" />
|
||||
<result column="name" property="name" />
|
||||
<result column="value" property="value" />
|
||||
<result column="case_id" property="caseId" />
|
||||
<result column="is_default" property="isDefault" />
|
||||
</resultMap>
|
||||
<insert id="batchSave">
|
||||
INSERT INTO column_value ( `COLUMN`, `NAME`, `VALUE`, case_id,is_default )
|
||||
values
|
||||
<foreach item="item" index="index" collection="list" separator=",">
|
||||
|
||||
(#{item.column},#{item.name},#{item.value},#{item.caseId},#{item.isDefault})
|
||||
</foreach>
|
||||
</insert>
|
||||
<update id="batchUpdate">
|
||||
<foreach collection="list" item="item" >
|
||||
update column_value
|
||||
<set>
|
||||
<if test="item.value != null and item.value != ''">
|
||||
`VALUE` = #{item.value},
|
||||
</if>
|
||||
</set>
|
||||
where id=#{item.id};
|
||||
</foreach>
|
||||
</update>
|
||||
|
||||
<update id="updateColumnValue" parameterType="ColumnValue">
|
||||
update column_value
|
||||
<set>
|
||||
<if test="value != null and value != ''">
|
||||
`VALUE` = #{value},
|
||||
</if>
|
||||
</set>
|
||||
where id=#{id}
|
||||
</update>
|
||||
|
||||
<select id="listByCaseId" resultMap="BaseResultMap">
|
||||
select * from column_value where case_id=#{caseId}
|
||||
</select>
|
||||
|
||||
<select id="queryColumnValueList" parameterType="ColumnValue" resultMap="BaseResultMap">
|
||||
select * from column_value c
|
||||
<where>
|
||||
<if test="caseId != null">
|
||||
AND c.case_id = #{caseId}
|
||||
</if>
|
||||
<if test="isDefault != null">
|
||||
AND c.is_default = #{isDefault}
|
||||
</if>
|
||||
|
||||
</where>
|
||||
</select>
|
||||
|
||||
|
||||
</mapper>
|
||||
@@ -0,0 +1,116 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper
|
||||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.ruoyi.wisdomarbitrate.mapper.FatchRuleMapper">
|
||||
<resultMap id="BaseResultMap" type="com.ruoyi.wisdomarbitrate.domain.FatchRule" >
|
||||
<result column="id" property="id" />
|
||||
<result column="batch_number" property="batchNumber" />
|
||||
<result column="file_name" property="fileName" />
|
||||
<result column="start_content" property="startContent" />
|
||||
<result column="end_content" property="endContent" />
|
||||
<result column="column" property="column" />
|
||||
<result column="column_name" property="columnName" />
|
||||
<result column="is_default" property="isDefault" />
|
||||
<result column="start_content_repeat_order" property="startContentRepeatOrder" />
|
||||
<result column="end_content_repeat_order" property="endContentRepeatOrder" />
|
||||
<result column="fatch_order" property="fatchOrder" />
|
||||
</resultMap>
|
||||
<select id="listByTemplateId" resultMap="BaseResultMap">
|
||||
select f.id ,f.file_name ,f.start_content ,f.end_content ,
|
||||
f.`column` , ifnull(f.is_default,0) is_default ,f.`column_name`,ifnull(f.start_content_repeat_order,1) start_content_repeat_order,ifnull(f.end_content_repeat_order,1) end_content_repeat_order,ifnull(f.fatch_order,0) fatch_order
|
||||
from fatch_rule f join template_fatch_rule tfr on f.id=tfr.fatch_rule_id
|
||||
where tfr.template_id=#{templateId}
|
||||
</select>
|
||||
|
||||
<select id="selectFatchRuleList" parameterType="FatchRule" resultMap="BaseResultMap">
|
||||
SELECT f.id ,f.file_name ,f.start_content ,f.end_content ,
|
||||
f.`column` ,f.is_default ,f.`column_name`,f.start_content_repeat_order,f.end_content_repeat_order,f.fatch_order
|
||||
FROM template_fatch_rule tf
|
||||
left join template_manage t on tf.template_id = t.id
|
||||
LEFT JOIN fatch_rule f on tf.fatch_rule_id = f.id
|
||||
<where>
|
||||
<if test="templateId != null">
|
||||
AND tf.template_id = #{templateId}
|
||||
</if>
|
||||
</where>
|
||||
</select>
|
||||
|
||||
<select id="selectColumnandComment" parameterType="FatchRule" resultMap="BaseResultMap">
|
||||
select
|
||||
a.COLUMN_name as `column`,
|
||||
a.COLumn_comment as column_name
|
||||
from
|
||||
information_schema.COLUMNS a
|
||||
where
|
||||
TABLE_schema = #{databaseName}
|
||||
and TABLE_name in('case_application','case_affiliate')
|
||||
and COLUMN_NAME not in('id','case_appli_id','case_num','case_subject_amount',
|
||||
'register_date','arbitrat_method','case_status','hear_date','begin_video_date',
|
||||
'online_video_person','create_time','update_by','update_time','create_by',
|
||||
'arbitrator_id','arbitrator_name','pended_trial_arbitorid','pending_appoint_arbotrar',
|
||||
'case_name','case_result','is_agree_pend_tral','objection_add_eviden','open_court_hear',
|
||||
'paid_expenses','filearbitra_url','pay_type','adjudica_counter','proper_preser','objecti_juris',
|
||||
'is_absence','respon_cross_opin','applica_cross_opin','respon_defen_opini','appli_is_absen',
|
||||
'lock_status','room_id','import_flag','version','batch_number','template_id','applicant_agent_user_id','contract_number','identity_type','application_organ_id')
|
||||
|
||||
</select>
|
||||
|
||||
<select id="selectColumnbycomment" parameterType="FatchRule" resultMap="BaseResultMap">
|
||||
select
|
||||
COLUMN_NAME
|
||||
from
|
||||
information_schema.COLUMNS
|
||||
where
|
||||
TABLE_schema = #{databaseName}
|
||||
and TABLE_name in('case_application','case_affiliate')
|
||||
and COLumn_comment = #{columnName}
|
||||
|
||||
</select>
|
||||
|
||||
|
||||
<select id="selectFatchRuleListIsDefault" parameterType="FatchRule" resultMap="BaseResultMap">
|
||||
SELECT f.id ,f.file_name ,f.start_content ,f.end_content ,
|
||||
f.`column` ,f.is_default ,f.`column_name`
|
||||
FROM fatch_rule f
|
||||
<where>
|
||||
<if test="isDefault != null">
|
||||
AND f.is_default = #{isDefault}
|
||||
</if>
|
||||
</where>
|
||||
</select>
|
||||
|
||||
<delete id="deletebatchFatchRule">
|
||||
delete from fatch_rule where id in
|
||||
<foreach collection="fatchRuleIds" item="item" open="(" separator="," close=")">
|
||||
#{item}
|
||||
</foreach>
|
||||
</delete>
|
||||
|
||||
<insert id="insertFatchRule" parameterType="FatchRule" useGeneratedKeys="true" keyProperty="id">
|
||||
insert into fatch_rule(
|
||||
<if test="fileName != null and fileName != ''">file_name,</if>
|
||||
<if test="startContent != null and startContent != ''">start_content,</if>
|
||||
<if test="endContent != null and endContent != ''">end_content,</if>
|
||||
<if test="column != null and column != ''">`column`,</if>
|
||||
<if test="columnName != null and columnName != ''">`column_name`,</if>
|
||||
<if test="isDefault != null">is_default,</if>
|
||||
start_content_repeat_order,end_content_repeat_order,fatch_order
|
||||
)values(
|
||||
<if test="fileName != null and fileName != ''">#{fileName},</if>
|
||||
<if test="startContent != null and startContent != ''">#{startContent},</if>
|
||||
<if test="endContent != null and endContent != ''">#{endContent},</if>
|
||||
<if test="column != null and column != ''">#{column},</if>
|
||||
<if test="columnName != null and columnName != ''">#{columnName},</if>
|
||||
<if test="isDefault != null">#{isDefault},</if>
|
||||
#{startContentRepeatOrder},#{endContentRepeatOrder},#{fatchOrder}
|
||||
)
|
||||
</insert>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</mapper>
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user