113 Commits
Author SHA1 Message Date
hanchaobo 933c3e2f48 Merge branch 'dev' of http://git.xayunmei.com/SH-Arbitrate/Arbitrate-Frontend into hcb 2024-05-31 18:05:38 +08:00
hanchaobo f7cb5cbcc0 bug修改 2024-05-31 18:05:19 +08:00
hanchaoboandGitea a4baf32f92 Merge branch 'hcb' of SH-Arbitrate/Arbitrate-Frontend into dev 2024-05-31 15:24:52 +08:00
hanchaobo 987000d5af 测试修改问题 2024-05-31 15:23:46 +08:00
hanchaoboandGitea d58fb3582c Merge branch 'hcb' of SH-Arbitrate/Arbitrate-Frontend into dev 2024-05-30 18:06:43 +08:00
hanchaobo 027fadfd36 bug修改 2024-05-30 18:06:12 +08:00
hanchaobo 377c33c6b5 bug修改 2024-05-30 18:00:30 +08:00
gaogaoyujieandGitea a15fffb8b1 Merge branch 'gyj' of SH-Arbitrate/Arbitrate-Frontend into dev 2024-05-30 16:18:06 +08:00
gyj 26e8b30555 Merge branch 'dev' of http://git.xayunmei.com/SH-Arbitrate/Arbitrate-Frontend into gyj 2024-05-30 16:17:02 +08:00
gyj 7d8c96071d 修改短信bug 2024-05-30 16:16:41 +08:00
gaogaoyujieandGitea 9ab4d87e21 Merge branch 'gyj' of SH-Arbitrate/Arbitrate-Frontend into dev 2024-05-29 10:07:24 +08:00
gyj 59b8773ce0 修改冲突 2024-05-29 10:05:42 +08:00
gyj f4cec02f6e 短信修改 2024-05-29 10:01:34 +08:00
hanchaoboandGitea 002893cf07 Merge branch 'hcb' of SH-Arbitrate/Arbitrate-Frontend into dev 2024-05-29 09:56:19 +08:00
hanchaobo 1e85a8b4e8 Merge branch 'dev' of http://git.xayunmei.com/SH-Arbitrate/Arbitrate-Frontend into hcb 2024-05-29 09:55:38 +08:00
hanchaobo 7c9d7010e1 邮箱界面 2024-05-29 09:55:27 +08:00
hanchaoboandGitea f291bda89e Merge branch 'hcb' of SH-Arbitrate/Arbitrate-Frontend into dev 2024-05-28 09:01:40 +08:00
hanchaobo e5390e9721 Merge branch 'dev' of http://git.xayunmei.com/SH-Arbitrate/Arbitrate-Frontend into hcb 2024-05-28 09:00:35 +08:00
hanchaobo fea5e406b6 bug修改 2024-05-28 09:00:23 +08:00
hanchaoboandGitea b275c86bde Merge branch 'hcb' of SH-Arbitrate/Arbitrate-Frontend into dev 2024-05-24 11:13:25 +08:00
hanchaobo 28663c1341 Merge branch 'dev' of http://git.xayunmei.com/SH-Arbitrate/Arbitrate-Frontend into hcb 2024-05-24 11:12:08 +08:00
hanchaobo 44d5f97807 案件新增,多人多机构 2024-05-24 11:11:58 +08:00
hanchaoboandGitea 5d9919fbfa Merge branch 'hcb' of SH-Arbitrate/Arbitrate-Frontend into dev 2024-05-20 16:58:15 +08:00
hanchaobo fb5f88710a Merge branch 'dev' of http://git.xayunmei.com/SH-Arbitrate/Arbitrate-Frontend into hcb 2024-05-20 16:56:48 +08:00
hanchaobo 7cf0427b56 裁决书上传无法更新问题 2024-05-20 16:56:38 +08:00
gaogaoyujieandGitea bede7d0dc2 Merge branch 'gyj' of SH-Arbitrate/Arbitrate-Frontend into dev 2024-05-17 15:56:20 +08:00
gyj dd8c361b67 Merge branch 'dev' of http://git.xayunmei.com/SH-Arbitrate/Arbitrate-Frontend into gyj 2024-05-17 15:53:16 +08:00
gyj f7c098940b 修改新增页面样式 2024-05-17 15:52:46 +08:00
hanchaoboandGitea 240ee96a33 Merge branch 'hcb' of SH-Arbitrate/Arbitrate-Frontend into dev 2024-05-16 16:18:09 +08:00
hanchaobo d4c5610f53 Merge branch 'dev' of http://git.xayunmei.com/SH-Arbitrate/Arbitrate-Frontend into hcb 2024-05-16 16:17:14 +08:00
hanchaobo 8b147a46f3 bug修改 2024-05-16 16:17:04 +08:00
gaogaoyujieandGitea f846f5bce2 Merge branch 'gyj' of SH-Arbitrate/Arbitrate-Frontend into dev 2024-05-16 16:12:03 +08:00
gyj 25f13bbbe9 Merge branch 'dev' of http://git.xayunmei.com/SH-Arbitrate/Arbitrate-Frontend into gyj 2024-05-16 16:11:03 +08:00
gyj 5e8091a164 bug修改 2024-05-16 16:10:49 +08:00
hanchaobo b79b8520c1 禅道bug515 2024-05-15 18:07:08 +08:00
hanchaoboandGitea 0f27b71dce Merge branch 'hcb' of SH-Arbitrate/Arbitrate-Frontend into dev 2024-05-14 15:47:14 +08:00
hanchaobo fe5e2497a2 Merge branch 'dev' of http://git.xayunmei.com/SH-Arbitrate/Arbitrate-Frontend into hcb 2024-05-14 15:45:59 +08:00
hanchaobo 8424561111 视频会议,onlyoffice 2024-05-14 15:45:47 +08:00
gaogaoyujieandGitea 349eed537c Merge branch 'gyj' of SH-Arbitrate/Arbitrate-Frontend into dev 2024-05-14 15:39:37 +08:00
gyj 421a8fded4 Merge branch 'dev' of http://git.xayunmei.com/SH-Arbitrate/Arbitrate-Frontend into gyj 2024-05-14 15:38:01 +08:00
gyj 95ab58c156 修改测试bug 2024-05-14 15:37:44 +08:00
gaogaoyujieandGitea 1ec0f71fb1 Merge branch 'gyj' of SH-Arbitrate/Arbitrate-Frontend into dev 2024-05-11 15:56:32 +08:00
gyj d07a9c08f0 Merge branch 'dev' of http://git.xayunmei.com/SH-Arbitrate/Arbitrate-Frontend into gyj 2024-05-11 15:54:22 +08:00
gyj 1ca6277ead 修改测试bug 2024-05-11 15:54:04 +08:00
gaogaoyujieandGitea bbaf01e16b Merge branch 'gyj' of SH-Arbitrate/Arbitrate-Frontend into dev 2024-05-11 14:50:25 +08:00
gyj 28dc9d4297 Merge branch 'dev' of http://git.xayunmei.com/SH-Arbitrate/Arbitrate-Frontend into gyj 2024-05-11 14:48:18 +08:00
gyj 5a752573cb 修改测试bug 2024-05-11 14:47:56 +08:00
gaogaoyujieandGitea c37b95c281 Merge branch 'gyj' of SH-Arbitrate/Arbitrate-Frontend into dev 2024-05-10 17:48:56 +08:00
gyj 6d9acd70db Merge branch 'dev' of http://git.xayunmei.com/SH-Arbitrate/Arbitrate-Frontend into gyj 2024-05-10 17:46:20 +08:00
gyj 27656dc005 修改测试bug 2024-05-10 17:45:48 +08:00
gaogaoyujieandGitea 7310bfde67 Merge branch 'gyj' of SH-Arbitrate/Arbitrate-Frontend into dev 2024-05-08 17:14:42 +08:00
gyj f5d9d37514 解决代码冲突 2024-05-08 17:13:06 +08:00
gyj d4a850cf4b 修改仲裁bug 2024-05-08 17:07:11 +08:00
hanchaoboandGitea 888ecb02a5 Merge branch 'hcb' of SH-Arbitrate/Arbitrate-Frontend into dev 2024-05-06 11:23:18 +08:00
hanchaobo 4d639d37b9 按钮修改 2024-05-06 11:22:28 +08:00
gyj b6a782e1df 批量测试修改 2024-01-09 18:04:17 +08:00
gyj a22e5b79d0 批量接口联调,查看案件列表跳转 2024-01-08 18:13:46 +08:00
gyj 80a02cce05 批量接口联调,用印,签名 2024-01-05 18:02:47 +08:00
gyj 2336d6d7d2 批量管理接口联调 2024-01-04 18:10:58 +08:00
gyj e17dea52b1 仲裁员批量审核页面开发,和接口联调 2024-01-03 17:32:35 +08:00
gyj 7dc3c11f06 批量页面开发,接口联调 2024-01-02 17:57:03 +08:00
gyj 6cd4f2843c 批量列表开发 2023-12-29 17:26:45 +08:00
gyj 4a3c470cf9 批量管理页面的开发 2023-12-28 17:53:19 +08:00
gyj 3df8326d9b 审核仲裁方式页面开发,案件录入新增裁决书模板,案件压缩包导入优化页面 2023-12-27 15:14:58 +08:00
gyj 0464409b5b 修改测试bug 2023-12-26 17:57:09 +08:00
gyj 733396c21b 移动批量按钮和修改bug 2023-12-25 18:16:24 +08:00
gyj c14fd42357 Merge branch 'gyj' into dev 2023-12-20 17:40:45 +08:00
gyj 4154978ee5 修改确认缴费传值问题 2023-12-20 17:35:27 +08:00
gaogaoyujieandGitea 02be03ef9d Merge branch 'gyj' of SH-Arbitrate/Arbitrate-Frontend into dev 2023-12-19 17:19:01 +08:00
gyj 876c34ea8a 批量用印,案件编号搜索 2023-12-19 17:13:57 +08:00
gyj 65acede646 案件编号,批量签名 2023-12-18 18:18:07 +08:00
gyj 54a821a31f 批量确认缴费,编号管理页面的开发,批量签名,批量用印页面的开发 2023-12-15 18:06:02 +08:00
gyj b30d79a516 申请人和被申请人是否书面审理,申请人缺席后按钮置灰,点击不用调用接口 2023-12-13 18:47:04 +08:00
gyj c7b4b30b77 Merge branch 'dev' into gyj 2023-12-12 19:07:02 +08:00
hanchaoboandGitea 6335807108 Merge branch 'hcb' of SH-Arbitrate/Arbitrate-Frontend into dev 2023-12-12 19:01:16 +08:00
fz c5d5218592 Merge branch 'dev' of http://git.xayunmei.com/SH-Arbitrate/Arbitrate-Frontend into hcb 2023-12-12 18:59:47 +08:00
fz 1daa8e241b ‘驳回意见
git commit -m ‘驳回意见
2023-12-12 18:59:42 +08:00
gyj 55d448fe95 上传庭审笔录界面接口联调,修改和详情页仲裁和理由字段,案件异议展示,审核抓取内容变红 2023-12-12 18:52:49 +08:00
hanchaoboandGitea 7d91729c7d Merge branch 'hcb' of SH-Arbitrate/Arbitrate-Frontend into dev 2023-12-12 18:10:34 +08:00
fz 1cabdbeede Merge branch 'dev' of http://git.xayunmei.com/SH-Arbitrate/Arbitrate-Frontend into hcb 2023-12-12 18:06:12 +08:00
fz be6983a497 ‘驳回意见
git commit -m ‘驳回意见
2023-12-12 18:06:06 +08:00
gaogaoyujieandGitea 6fcc2bbdcc Merge branch 'gyj' of SH-Arbitrate/Arbitrate-Frontend into dev 2023-12-11 18:30:24 +08:00
gyj 91a0a4ec9c 案件归档,审核修改tab,修改bug,模板字段接口联调 2023-12-11 18:24:31 +08:00
hanchaoboandGitea ade16242d0 Merge branch 'hcb' of SH-Arbitrate/Arbitrate-Frontend into dev 2023-12-09 20:06:06 +08:00
Your Name 2e300f1555 ’1209;
git commit -m ’1209
2023-12-09 20:02:06 +08:00
Your Name 2d39f5a237 Merge branch 'dev' of http://git.xayunmei.com/SH-Arbitrate/Arbitrate-Frontend into hcb 2023-12-09 15:28:59 +08:00
Your Name 5d55d38da1 1209测试,抓取规则,模板字段展示 2023-12-09 15:28:50 +08:00
gyj ae3b611c42 Merge branch 'dev' into gyj 2023-12-09 15:19:42 +08:00
gyj 41713465ec 抓取内容联调接口 2023-12-09 15:17:09 +08:00
gaogaoyujieandGitea ad594ba920 Merge branch 'gyj' of SH-Arbitrate/Arbitrate-Frontend into dev 2023-12-08 23:22:14 +08:00
gyj 0379af6c13 Merge branch 'dev' into gyj 2023-12-08 23:18:10 +08:00
gyj 15e1222574 申请人机构改为申请人页面优化,缴费界面的优化,详情页和修改页面加tab页面,展示抓取内容页面的开发 2023-12-08 23:09:11 +08:00
hanchaoboandGitea 2a582b2a80 Merge branch 'hcb' of SH-Arbitrate/Arbitrate-Frontend into dev 2023-12-08 17:50:15 +08:00
fz b3ebeeaa94 Merge branch 'dev' of http://git.xayunmei.com/SH-Arbitrate/Arbitrate-Frontend into hcb 2023-12-08 17:47:44 +08:00
fz 8dca5ab3d9 设置抓取规则修改 2023-12-08 17:47:33 +08:00
hanchaoboandGitea a6a76a0e3f Merge branch 'hcb' of SH-Arbitrate/Arbitrate-Frontend into dev 2023-12-07 18:59:43 +08:00
fz b10132c3e5 Merge branch 'dev' of http://git.xayunmei.com/SH-Arbitrate/Arbitrate-Frontend into hcb 2023-12-07 18:58:59 +08:00
fz d191e893ff 上传压缩包绑定裁决书模板 2023-12-07 18:58:53 +08:00
gaogaoyujieandGitea 79c1d5b69d Merge branch 'gyj' of SH-Arbitrate/Arbitrate-Frontend into dev 2023-12-07 18:48:42 +08:00
gyj 7bdba3ab97 生成笔录接口联调,证据清单 2023-12-07 18:31:32 +08:00
gyj 2bb57e562d Merge branch 'dev' of http://git.xayunmei.com/SH-Arbitrate/Arbitrate-Frontend into dev 2023-12-06 18:06:47 +08:00
gyj fae93fdc00 裁决书管理的案件详情页 2023-12-06 18:03:49 +08:00
hanchaoboandGitea 9162a0eb04 Merge branch 'hcb' of SH-Arbitrate/Arbitrate-Frontend into dev 2023-12-06 17:59:57 +08:00
fz 79fad1f370 Merge branch 'dev' of http://git.xayunmei.com/SH-Arbitrate/Arbitrate-Frontend into hcb 2023-12-06 17:53:56 +08:00
fz 222ab6588d ‘抓取规则
git commit -m ‘抓取规则
2023-12-06 17:53:51 +08:00
hanchaoboandGitea d3c0437f32 Merge branch 'hcb' of SH-Arbitrate/Arbitrate-Frontend into dev 2023-12-05 22:38:38 +08:00
fz 77d59a2b21 Merge branch 'dev' of http://git.xayunmei.com/SH-Arbitrate/Arbitrate-Frontend into hcb 2023-12-05 22:36:40 +08:00
fz 476c5a0b59 加入仲裁员审核流程,首页修改 2023-12-05 22:36:34 +08:00
gyj 9f74eaea1b 案件详情,归档详情,仲裁申请书展示,流程信息展示下一步操作角色 2023-12-05 18:04:41 +08:00
gyj 9f8abe402b 证据清单页面的开发 2023-12-04 18:04:10 +08:00
fz 55add30b22 Merge branch 'dev' of http://git.xayunmei.com/SH-Arbitrate/Arbitrate-Frontend into hcb 2023-12-04 10:03:18 +08:00
fz f2be82b31a 合并代码 2023-12-04 10:03:08 +08:00
gyj f28be0bd16 修改申请人验证问题,书面审理时不要展示视频tab栏 2023-12-01 13:20:51 +08:00
80 changed files with 8884 additions and 1231 deletions
+1
View File
@@ -7,6 +7,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
<link rel="icon" href="<%= BASE_URL %>favicon.ico">
<title><%= webpackConfig.name %></title>
<script src="http://121.40.189.20:8899/web-apps/apps/api/documents/api.js"></script>
<!--[if lt IE 11]><script>window.location.href='/html/ie.html';</script><![endif]-->
<style>
html,
@@ -131,3 +131,11 @@ export function emailByCaseId(data) {
params: data
})
}
// 仲裁员审核裁决书
export function arbitratorCheckArbitrateRecord(data) {
return request({
url: '/caseApplication/arbitrator/checkArbitrateRecord',
method: 'post',
data: data
})
}
+146
View File
@@ -0,0 +1,146 @@
import request from '@/utils/request'
// 批量案件查询
export function listBatch(data) {
return request({
url: '/caseApplication/listBatch',
method: 'get',
params: data
})
}
// 批量提交
export function submitCaseApplicationBatch(data) {
return request({
url: '/caseApplication/submitCaseApplicationBatch',
method: 'post',
data: data
})
}
// 批量立案审查
export function submitCaseApplicationCheckBatch(data) {
return request({
url: '/caseApplication/submitCaseApplicationCheckBatch',
method: 'post',
data: data
})
}
// 批量缴费
export function confirmPayBatch(data) {
return request({
url: '/pay/confirmPayBatch',
method: 'post',
data: data
})
}
//批量缴费总金额
export function payListBatch(data) {
return request({
url: '/pay/listBatch',
method: 'post',
data: data
})
}
// 缴费支付二维码
export function casePayBatch(data) {
return request({
url: '/pay/casePayBatch',
method: 'post',
data: data
})
}
// 批量缴费确认
export function confirmBatch(data) {
return request({
url: '/pay/confirmBatch',
method: 'post',
data: data
})
}
//批量组庭审核
export function pendTralCheckBatch(data) {
return request({
url: '/caseApplication/pendTralCheckBatch',
method: 'post',
data: data
})
}
// 批量组庭确认
export function pendTralSureBatch(data) {
return request({
url: '/caseApplication/pendTralSureBatch',
method: 'post',
data: data
})
}
//秘书批量审核文书
export function verificationArbitrateRecordBatch(data) {
return request({
url: '/caseApplication/verificationArbitrateRecordBatch',
method: 'post',
data: data
})
}
//仲裁员批量审核
export function checkArbitrateRecordBatch(data) {
return request({
url: '/caseApplication/arbitrator/checkArbitrateRecordBatch',
method: 'post',
data: data
})
}
// 部门长批量审核
export function checkArbitrateRecordBatchs(data) {
return request({
url: '/caseApplication/checkArbitrateRecordBatch',
method: 'post',
data: data
})
}
//审核仲裁方式
export function methodBatch(data) {
return request({
url: '/arbitrate/methodBatch',
method: 'post',
data: data
})
}
//批量书面审理
export function writtenHearBatch(data) {
return request({
url: '/arbitrate/writtenHearBatch',
method: 'post',
data: data
})
}
// 根据批号批量签名
export function getSignUrlBatch(data) {
return request({
url: '/adjudication/getSignUrlBatch',
method: 'post',
data: data
})
}
//根据批号批量用印
export function getSealUrlBatch(data) {
return request({
url: '/adjudication/getSealUrlBatch',
method: 'post',
data: data
})
}
//批量归档
export function caseFileBatch(data) {
return request({
url: '/adjudication/caseFileBatch',
method: 'post',
data: data
})
}
//仲裁文书送达
export function serviceBatch(data) {
return request({
url: '/adjudication/serviceBatch',
method: 'post',
data: data
})
}
+32 -1
View File
@@ -8,7 +8,30 @@ export function caseApply(data) {
params: data
})
}
//批量查询案件签名
export function pageSignAdjudicate(data) {
return request({
url: '/adjudication/pageSignAdjudicate',
method: 'get',
params: data
})
}
// 批量签名提交
export function selectBatchSignUrl(data) {
return request({
url: '/adjudication/selectBatchSignUrl',
method: 'post',
data: data
})
}
// 批量签名提交
export function selectBatchSealUrl(data) {
return request({
url: '/adjudication/selectBatchSealUrl',
method: 'post',
data: data
})
}
// 立案申请
export function addCaseApply(data) {
return request({
@@ -33,6 +56,14 @@ export function editCaseApply(data) {
data: data
})
}
// 抓取内容修改
export function editCaseApplicationDefineval(data) {
return request({
url: '/caseApplication/editCaseApplicationDefineval',
method: 'post',
data: data
})
}
// 删除案件信息
export function removeCaseApply(data) {
return request({
+13 -1
View File
@@ -8,6 +8,10 @@ export function adjudicationArchives(data) {
params: data
})
}
//根据案件id查询视频列表
export function videoList(data) {
return request({
@@ -15,4 +19,12 @@ export function videoList(data) {
method: 'get',
params: data
})
}
}
// 下载案件压缩包
export function downloadCaseZipFile(data) {
return request({
url: '/caseApplication/downloadCaseZipFile',
method: 'post',
data: data
})
}
+35 -1
View File
@@ -25,6 +25,14 @@ export function creatTrialRecord(data) {
data: data,
});
}
// 确认生成笔录
export function creatTrialRecordnew(data) {
return request({
url: "/caseApplication/confirmMeetingResult",
method: "post",
data: data,
});
}
// 组庭确认
export function pendTralSure(data) {
return request({
@@ -49,6 +57,14 @@ export function document(data) {
data: data,
});
}
// 开庭审理提交
export function changeCaseStatus(data) {
return request({
url: "/adjudication/changeCaseStatus",
method: "post",
data: data,
});
}
// 案件证据上传
export function evidenceUpload(data) {
return request({
@@ -137,4 +153,22 @@ export function attachListByCaseId(data) {
params: data,
})
}
// 案件列表
export function caseApplicationList(data) {
return request({
url: '/caseApplication/list',
// headers: {
// isToken: false
// },
method: 'get',
params: data
})
}
// 根据案件id查询当前登陆人是否为仲裁员
export function secretaryRoleByUserId(data) {
return request({
url: '/video/secretaryRoleByUserId',
method: 'get',
params: data
})
}
+31
View File
@@ -17,4 +17,35 @@ export function smsList(data,params) {
data: data,
params:params
})
}
// 更新邮件发送记录
export function update(data) {
return request({
url: 'sendMailRecord/update',
})
}
// 分页查询短信
export function recordList(data) {
return request({
url: '/shortMessage/recordList',
method: 'get',
params: data
})
}
//更新短信内容
export function updateSendContent(data) {
return request({
url: 'shortMessage/updateSendContent',
method: 'post',
data: data,
})
}
// 重新发送短信
export function reSendShortMessage(data) {
return request({
url: 'shortMessage/reSendShortMessage',
method: 'post',
data: data,
})
}
+6
View File
@@ -6,3 +6,9 @@ export function toDoCount() {
method: 'get'
})
}
+88
View File
@@ -112,4 +112,92 @@ export function bindHandler(data) {
method: 'get',
params: data
})
}
// 查询模板
export function getManagerList(data) {
return request({
url: '/template/list',
method: 'get',
params: data
})
}
// 案件编号查新模板
export function caseNumRuleList(data) {
return request({
url: '/caseNumRule/list',
method: 'get',
params: data
})
}
// 新增模板
export function insertManager(data) {
return request({
url: '/template/insert',
method: 'post',
data: data
})
}
// 案件编号新增
export function insertCaseNumRule(data) {
return request({
url: '/caseNumRule/insertCaseNumRule',
method: 'post',
data: data
})
}
// 删除模板
export function deleteManager(data) {
return request({
url: '/template/delete',
method: 'delete',
params: data
})
}
//案件编号删除
export function deleteCaseNumRule(data) {
return request({
url: '/caseNumRule/deleteCaseNumRule',
method: 'post',
data: data
})
}
// 修改模板
export function updateManager(data) {
return request({
url: '/template/update',
method: 'put',
data: data
})
}
// 案件编号修改
export function updateCaseNumRule(data) {
return request({
url: '/caseNumRule/updateCaseNumRule',
method: 'post',
data: data
})
}
// 查询模板id对应的设置抓取字段
export function getFatchRuleByTemplateid(data) {
return request({
url: '/deptIdentify/getFatchRuleByTemplateid',
method: 'post',
data: data
})
}
// 保存抓取规则
export function saveFatchRules(data) {
return request({
url: '/deptIdentify/saveFatchRules',
method: 'post',
data: data
})
}
// 模板字段列表
export function getTemplateInfoById(data) {
return request({
url: '/deptIdentify/getTemplateInfoById',
method: 'get',
params: data
})
}
+20
View File
@@ -0,0 +1,20 @@
import request from '@/utils/request'
// 获取onlyoffice配置文件
export function getOnlyoffice(params) {
return request({
url: '/onlyOffice',
// headers: {
// isToken: false
// },
method: 'get',
params: params
})
}
// 保存onlyoffice文档
export function saveOnlyOfficeFile(data) {
return request({
url: '/caseApplication/saveOnlyOfficeFile',
method: 'post',
data: data
})
}
+5
View File
@@ -61,6 +61,11 @@ export const constantRoutes = [
component: () => import('@/views/error/401'),
hidden: true
},
{
path: '/onlyoffice',
component: () => import('@/views/onlyoffice/onlyoffice'),
hidden: true
},
{
path: '',
component: Layout,
+1
View File
@@ -15,5 +15,6 @@ const getters = {
topbarRouters:state => state.permission.topbarRouters,
defaultRoutes:state => state.permission.defaultRoutes,
sidebarRouters:state => state.permission.sidebarRouters,
userId:state => state.user.userId,
}
export default getters
+4
View File
@@ -11,6 +11,9 @@ const user = {
},
mutations: {
SET_USERID:(state,userId) => {
state.userId = userId
},
SET_TOKEN: (state, token) => {
state.token = token
},
@@ -60,6 +63,7 @@ const user = {
}
commit('SET_NAME', user.userName)
commit('SET_AVATAR', avatar)
commit('SET_USERID',user.userId)
resolve(res)
}).catch(error => {
reject(error)
@@ -0,0 +1,159 @@
<template>
<!-- 批量用印 -->
<div>
<el-dialog title="批量用印" width="65%" :visible="printingVisable" @close="cancel" center :distroy-on-close="true">
<!-- 查询机构信息 -->
<el-form ref="courtReviewform" :model="courtReviewform">
<el-form-item
label="查询机构:"
prop="Arbitor"
:rules="[
{
required: true,
message: '查询机构不能为空',
trigger: 'change',
},
]"
>
<el-select
placeholder="请选择查询机构"
@change="changeArbitor"
v-model="courtReviewform.Arbitor"
clearable
>
<el-option
v-for="item in atoDataList"
:key="item.id"
:label="item.identifyName"
:value="item.operPhone+item.id"
></el-option>
</el-select>
</el-form-item>
</el-form>
<el-table v-loading="loading" :data="dataList" style="width: 100%" @selection-change="handleSelectionChange">
<el-table-column type="selection">
</el-table-column>
<el-table-column label="序号" type="index" align="center">
<template slot-scope="scope">
<span>{{
(queryParamsData.pageNum - 1) * queryParamsData.pageSize + scope.$index + 1
}}</span>
</template>
</el-table-column>
<el-table-column label="案件编号" prop="caseNum" align="center" width="150" :show-overflow-tooltip="true" />
<el-table-column label="申请人" align="center" prop="applicantName" :show-overflow-tooltip="true" />
<el-table-column label="案件标的" align="center" prop="caseSubjectAmount"/>
<el-table-column label="仲裁方式" align="center" prop="arbitratMethodName" :show-overflow-tooltip="true" />
<!-- 仲裁员 -->
<el-table-column label="仲裁员" align="center" prop="arbitratorName" />
<!-- 开庭日期 -->
<el-table-column label="开庭日期" align="center" prop="hearDate" :show-overflow-tooltip="true" />
<el-table-column label="案件状态" align="center" prop="caseStatusName">
<template slot-scope="scope">
<el-tag type="success">{{ scope.row.caseStatusName }}</el-tag>
</template>
</el-table-column>
</el-table>
<pagination :total="total" :page.sync="queryParamsData.pageNum"
:limit.sync="queryParamsData.pageSize" />
<div slot="footer" class="dialog-footer">
<el-button @click="cancel" class="endbutton"><span>取 消</span></el-button>
<el-button type="primary" class="endbutton" :disabled="dataList.length == 0 || batchData.length == 0" @click="confirmSeals"><span>确认用印</span></el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import {selectBatchSealUrl,pageSignAdjudicate} from '@/api/caseAccess/caseEntry'
import {deptIdentifyList} from '@/api/officialSeal/officialSeal'
export default {
props:["printingVisable"],
data() {
return {
// 遮罩层
loading: true,
// 总条数
total:0,
// 查询参数
queryParamsData: {
caseStatus: 14,
pageNum: 1,
pageSize: 10,
},
// 表格数据
dataList: [],
batchData: [],
atoDataList:[],
courtReviewform: {},
Arbitor: "",
paramsdata:{
ids:[],
psnAccount:""
},
}
},
watch: {
printingVisable(val) {
if (val) {
this.getBatchPrinting(this.queryParamsData);
this.getarbitrAtor()
}
}
},
created(){
this.getBatchPrinting(this.queryParamsData)
// this.getarbitrAtor()
},
methods:{
// 列表查询
getBatchPrinting(val){
this.loading = true;
pageSignAdjudicate(val).then(res=>{
this.dataList = res.rows
this.total = res.total;
this.loading = false;
})
},
// 选择勾选框
handleSelectionChange(val){
this.batchData = [];
val.forEach(item => {
this.batchData.push(item.signFlowId)
this.paramsdata.ids = this.batchData
})
},
// 查询机构信息
getarbitrAtor() {
this.atoDataList =[]
deptIdentifyList({}).then((res) => {
console.log(res)
this.atoDataList = res.rows;
// this.total = res.total;
});
},
// 下拉获取电话号码
changeArbitor(val){
this.paramsdata.psnAccount = val.slice(0,11)
},
// 确认用印
confirmSeals(){
this.$refs["courtReviewform"].validate((valid) => {
if (valid) {
selectBatchSealUrl(this.paramsdata).then((res) => {
this.$modal.msgSuccess("确认成功");
this.cancel();
this.getBatchPrinting(this.queryParamsData)
window.open(res.data.signUrl)
// this.$emit("getcaseApply", this.queryParams);
})
.catch((err) => {});
}
});
},
cancel() {
this.$emit("printingOperate");
},
}
}
</script>
@@ -0,0 +1,165 @@
<template>
<div>
<!-- 批量签名 -->
<el-dialog title="批量签名" width="65%" :visible="signatureVisable" @close="cancel" center :distroy-on-close="true">
<el-form ref="courtReviewform" :model="courtReviewform">
<el-form-item
label="仲裁员:"
prop="Arbitor"
:rules="[
{
required: true,
message: '仲裁员不能为空',
trigger: 'change',
},
]"
>
<el-select
placeholder="请选择仲裁员"
@change="changeArbitor"
v-model="courtReviewform.Arbitor"
clearable
>
<el-option
v-for="item in atoDataList"
:key="item.value"
:label="item.nickName"
:value="item.phonenumber+item.userId"
></el-option>
</el-select>
</el-form-item>
</el-form>
<el-table v-loading="loading" :data="dataList" style="width: 100%" @selection-change="handleSelectionChange">
<el-table-column type="selection">
</el-table-column>
<el-table-column label="序号" type="index" align="center">
<template slot-scope="scope">
<span>{{
(queryParamsData.pageNum - 1) * queryParamsData.pageSize + scope.$index + 1
}}</span>
</template>
</el-table-column>
<el-table-column label="案件编号" prop="caseNum" align="center" width="150" :show-overflow-tooltip="true" />
<el-table-column label="申请人" align="center" prop="applicantName" :show-overflow-tooltip="true" />
<el-table-column label="案件标的" align="center" prop="caseSubjectAmount" />
<el-table-column label="仲裁方式" align="center" prop="arbitratMethodName" :show-overflow-tooltip="true" />
<!-- 仲裁员 -->
<el-table-column label="仲裁员" align="center" prop="arbitratorName" />
<!-- 开庭日期 -->
<el-table-column label="开庭日期" align="center" prop="hearDate" :show-overflow-tooltip="true" />
<el-table-column label="案件状态" align="center" prop="caseStatusName">
<template slot-scope="scope">
<el-tag type="success">
{{ scope.row.caseStatusName }}
</el-tag>
</template>
</el-table-column>
</el-table>
<pagination :total="total" :page.sync="queryParamsData.pageNum"
:limit.sync="queryParamsData.pageSize" @pagination="getBatchComfirmation(queryParamsData)"/>
<div slot="footer" class="dialog-footer">
<el-button @click="cancel" class="endbutton"><span>取 消</span></el-button>
<el-button
type="primary"
class="endbutton"
:disabled="dataList.length == 0 || batchData.length == 0"
@click="witnessing"><span>确认签名</span></el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import {selectBatchSignUrl,pageSignAdjudicate} from '@/api/caseAccess/caseEntry'
import { arbitrAtor} from "@/api/formationCourt/formationCourt";
export default {
props:["signatureVisable"],
data() {
return {
// 遮罩层
loading: true,
// 总条数
total:0,
// 查询参数
queryParamsData: {
caseStatus: 13,//待定
pageNum: 1,
pageSize: 10,
},
// 表格数据
dataList: [],
batchData: [],
atoDataList:[],
courtReviewform: {},
Arbitor: "",
paramsdata:{
ids:[],
psnAccount:""
},
}
},
watch: {
signatureVisable(val) {
if (val) {
this.getBatchSignation(this.queryParamsData)
this.getarbitrAtor()
}
}
},
created(){
this.getBatchSignation(this.queryParamsData)
// this.getarbitrAtor()
},
methods:{
// 列表查询
getBatchSignation(val){
this.loading = true;
pageSignAdjudicate(val).then(res=>{
this.dataList = res.rows
this.total = res.total;
this.loading = false;
})
},
// 选择勾选框
handleSelectionChange(val){
this.batchData = [];
val.forEach(item => {
this.batchData.push(item.signFlowId)
this.paramsdata.ids = this.batchData
})
},
// 获取仲裁员信息
getarbitrAtor() {
this.atoDataList =[]
arbitrAtor({}).then((res) => {
this.atoDataList = res.rows;
// this.total = res.total;
});
},
changeArbitor(val) {
this.paramsdata.psnAccount = val.slice(0,11)
},
// 确认签名
witnessing(){
this.$refs["courtReviewform"].validate((valid) => {
if (valid) {
console.log(this.paramsdata)
selectBatchSignUrl(this.paramsdata).then((res) => {
this.$modal.msgSuccess("确认成功");
this.cancel();
this.getBatchSignation(this.queryParamsData)
window.open(res.data.signUrl)
// this.$emit("getcaseApply", this.queryParams);
})
.catch((err) => {});
}
});
},
cancel() {
this.$emit("signatureOperate");
},
}
}
</script>
@@ -0,0 +1,133 @@
<template>
<div>
<el-dialog title="案件详情" :visible="showarchiveDetails" @close="cancel" :destroy-on-close="true" center>
<div class="loading" v-if="flagLoadingS">
<i class="el-icon-loading"></i>
</div>
<div v-else>
<!-- <div class="noData" v-if="noData">暂无数据!</div> -->
<el-tabs v-model="activeName" @tab-click="handleClick">
<el-tab-pane label="申请人案件证据资料" name="first"></el-tab-pane>
<el-tab-pane label="被申请人案件证据资料" name="second"></el-tab-pane>
<el-tab-pane label="裁决书附件" name="third"></el-tab-pane>
<!-- <el-tab-pane label="仲裁申请书" name="fourth"></el-tab-pane> -->
<el-tab-pane label="案件视频" name="five"></el-tab-pane>
<el-tab-pane label="庭审笔录" name="six"></el-tab-pane>
<el-tab-pane label="案件异议信息" name="seven"></el-tab-pane>
</el-tabs>
<div v-show="activeName=='first'">
<div v-for="(item,index) in detailsAwardNum.caseAttachList" :key="index" v-if="item.annexType==2" style="margin-top:10px;">
<el-link target="_blank" type="primary" :href="fileURL+item.annexPath">{{item.annexName}}</el-link>
</div>
<el-empty v-if="isNoData(detailsAwardNum.caseAttachList,2) == 0" description="暂无数据"></el-empty>
</div>
<div v-show="activeName=='second'">
<div v-for="item in detailsAwardNum.caseAttachList" v-if="item.annexType==6" style="margin-top:10px;">
<el-link target="_blank" type="primary" :href="fileURL+item.annexPath">{{item.annexName}}</el-link>
</div>
<el-empty v-if="isNoData(detailsAwardNum.caseAttachList,6) == 0" description="暂无数据"></el-empty>
</div>
<div v-show="activeName=='third'">
<div v-for="item in detailsAwardNum.caseAttachList" v-if="item.annexType==3" style="margin-top:10px;">
<el-link target="_blank" type="primary" :href="fileURL+item.annexPath">{{item.annexName}}</el-link>
</div>
<el-empty v-if="isNoData(detailsAwardNum.caseAttachList,3) == 0" description="暂无数据"></el-empty>
</div>
<div v-show="activeName=='fourth'">
<div v-for="item in detailsAwardNum.caseAttachList" v-if="item.annexType==1" style="margin-top:10px;">
<el-link target="_blank" type="primary" :href="fileURL+item.annexPath">{{item.annexName}}</el-link>
</div>
<el-empty v-if="isNoData(detailsAwardNum.caseAttachList,1) == 0" description="暂无数据"></el-empty>
</div>
<div v-show="activeName=='five'">
<video style="background-color: #181717;width: 350px;height: 200px;margin: 10px;" :src="headPath + item.annexPath" v-for="(item,index) in videoList" :key="index" controls="controls"></video>
<el-empty v-if="videoList == null || videoList.length ==0" description="暂无数据"></el-empty>
</div>
<!-- <div v-show="activeName=='six'">
<div v-for="(item,index) in trialTranscripts" :key="index" style="margin-top:10px;">
<el-link target="_blank" type="primary" :href="fileURL+item.annexPath">{{item.annexName}}</el-link>
</div>
<el-empty v-if="trialTranscripts == null || trialTranscripts.length ==0" description="暂无数据"></el-empty>
</div> -->
<div v-show="activeName=='six'">
<div v-for="item in detailsAwardNum.caseAttachList" v-if="item.annexType==7" style="margin-top:10px;">
<el-link target="_blank" type="primary" :href="fileURL+item.annexPath">{{item.annexName}}</el-link>
</div>
<el-empty v-if="isNoData(detailsAwardNum.caseAttachList,7) == 0" description="暂无数据"></el-empty>
</div>
<div v-show="activeName=='seven'">
<div v-if="detailsAwardNum.adjudicaCounterReason">案件异议信息:{{detailsAwardNum.adjudicaCounterReason}}</div>
<el-empty v-if="!detailsAwardNum.adjudicaCounterReason" description="暂无数据"></el-empty>
</div>
</div>
<div slot="footer" class="dialog-footer">
<el-button @click="cancel">取 消</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
export default {
props: ["showarchiveDetails","detailsAwardNum","videoList","flagLoadingS","trialTranscripts"],
components: {
},
data() {
return {
activeName: 'first',
fileURL: window.location.origin + "/API",
headPath:window.location.origin + "/API",
noData: false,
// myData:[],
// videoLists:[]
};
},
created(){
},
methods: {
isNoData(data,type){
let resNumber = 0
if(data){
let list = data.filter(item => item.annexType == type)
if(list){
resNumber = list.length
}
}
return resNumber
},
handleClick(tab, event) {
},
cancel() {
this.$emit("cancelDetail");
// this.activeName ="first"
},
},
}
</script>
<style lang="scss" scoped>
::v-deep .el-dialog__body {
height: 500px !important;
overflow: auto !important;
}
::v-deep .el-dialog {
width: 850px;
background: #ffffff;
border-radius: 20px;
}
.loading {
width: 100%;
height: 100%;
display: flex;
justify-content: center;
align-items: center;
.el-icon-loading {
font-size: 50px;
}
}
</style>
@@ -74,26 +74,31 @@
v-model="arbitrateRecord.verificaOpinion" />
</el-form-item> -->
<el-form-item label="笔录内容:" prop="responCrossOpin">
<!-- <el-input type="textarea" :autosize="{ minRows: 6 }" v-model="arbitrateRecord.responCrossOpin" placeholder="请输入" /> -->
<el-input type="textarea" :autosize="{ minRows: 6 }" v-model="arbitrateRecordt.responCrossOpin" placeholder="请输入" />
</el-form-item>
<el-form-item label="审核意见:" prop="checkOpinion" v-if="flag == 2">
<!-- <el-input type="textarea" :autosize="{ minRows: 6 }" v-model="arbitrateRecord.responCrossOpin" placeholder="请输入" /> -->
<el-input type="textarea" :autosize="{ minRows: 6 }" v-model="arbitrateRecordt.responCrossOpin"
placeholder="请输入" />
</el-form-item>
<el-form-item label="审核意见:" prop="checkOpinion" v-if="flag == 2 || flag == 4">
<el-input type="textarea" autosize placeholder="请输入内容" v-model="arbitrateRecord.checkOpinion" />
</el-form-item>
<el-form-item label="驳回原因" prop="arbitrateReject" v-if="flag == 2 || flag == 4">
<el-input type="textarea" :rows="2" placeholder="请输入拒绝原因" v-model="arbitrateRecord.arbitrateReject"></el-input>
</el-form-item>
</el-form>
<!-- 画布 -->
<h4 v-if="flag == 3">签名区域</h4>
<!-- <h4 v-if="flag == 3">签名区域</h4>
<div class="esign" v-if="flag == 3">
<vue-esign ref="esign" :width="900" :height="300" bgColor="#ffffff" />
</div>
</div> -->
<!-- 清除画布 -->
<el-button v-if="flag == 3" type="info" @click="handleReset">清除画布</el-button>
<div slot="footer" class="dialog-footer">
<el-button type="danger" @click="submitForm(4)" v-if="flag == 1">重新生成裁决书</el-button>
<!-- <el-button type="danger" @click="submitForm(4)" v-if="flag == 1">重新生成裁决书</el-button> -->
<el-button type="primary" @click="submitForm(0)" v-if="flag == 1">提 交</el-button>
<el-button type="primary" @click="submitForm(1)" v-if="flag == 2">同 意</el-button>
<el-button type="danger" @click="submitForm(2)" v-if="flag == 2">驳 回</el-button>
<el-button type="primary" @click="submitForm(3)" v-if="flag == 3">提 交</el-button>
<el-button type="primary" @click="submitForm(5)" v-if="flag == 4">同 意</el-button>
<el-button type="danger" @click="submitForm(6)" v-if="flag == 4">驳 回</el-button>
<el-button @click="cancel">取 消</el-button>
</div>
</el-dialog>
@@ -105,7 +110,8 @@ import {
verificationArbitrateRecord,
checkArbitrateRecord,
adjudicationSignature,
regenerationDocument
regenerationDocument,
arbitratorCheckArbitrateRecord
} from "@/api/awardManagement/awardManagement";
export default {
props: ["openDialog", "title", "flag", "detailform"],
@@ -116,7 +122,7 @@ export default {
form: {},
arbitrateRecord: {
// checkOpinion:"同意"
checkOpinion:""
checkOpinion: ""
},
// 表单校验
rules: {
@@ -169,6 +175,13 @@ export default {
trigger: "blur",
},
],
// arbitrateReject: [
// {
// required: true,
// message: "拒绝原因不能为空",
// trigger: "blur",
// },
// ],
},
applicantFileArr: [], //申请人
applicantPathArr: [], //申请人
@@ -191,14 +204,17 @@ export default {
(this.awardFileArr = []), //裁决书
(this.awardPathArr = []), //裁决书
// setTimeout(() => {
this.form = this.detailform;
// if(this.form.arbitrateRecord && this.form.arbitrateRecord.checkOpinion == null ){
// this.form.arbitrateRecord.checkOpinion = '同意';
this.arbitrateRecord.checkOpinion = '';
// }
// this.arbitrateRecord = this.form.arbitrateRecord;
this.evidenceFile(this.form);
// }, 1000);
this.form = this.detailform;
// if(this.form.arbitrateRecord && this.form.arbitrateRecord.checkOpinion == null ){
// this.form.arbitrateRecord.checkOpinion = '同意';
this.arbitrateRecord.checkOpinion = '';
// }
this.arbitrateRecord = {};
if (this.form.arbitrateRecord) {
this.arbitrateRecord.id = this.form.arbitrateRecord.id;
}
this.evidenceFile(this.form);
// }, 1000);
}
},
},
@@ -210,7 +226,7 @@ export default {
this.applicantFileArr = [];
this.applicantPathArr = [];
this.respondentFileArr = [];
this.respondenPathArr = [];
this.respondenPathArr = [];
this.awardFileArr = [];
this.awardPathArr = [];
this.bookFileArr = [];
@@ -261,6 +277,14 @@ export default {
this.$message("成功");
});
},
// 仲裁员审核裁决书
arbitratorCheckArbitrateRecordFn(parms) {
arbitratorCheckArbitrateRecord(parms).then((res) => {
this.cancel();
this.$emit("updataList");
this.$message("成功");
});
},
// 签名
adjudicationSignatureFn(parms) {
adjudicationSignature(parms).then((res) => {
@@ -280,6 +304,7 @@ export default {
})
},
submitForm(parms) {
let that = this;
this.$refs["form"].validate((valid) => {
if (valid) {
if (parms == 0) {
@@ -294,11 +319,18 @@ export default {
arbitrateRecord: this.arbitrateRecord,
});
} else if (parms == 2) {
this.checkArbitrateRecordFn({
id: this.form.id,
agreeOrNotCheck: 2,
arbitrateRecord: this.arbitrateRecord,
});
if (!that.arbitrateRecord.arbitrateReject == "") {
this.$message.error('请输入拒绝原因');
return
} else {
this.arbitrateRecord.deptorReject = this.arbitrateRecord.arbitrateReject;
delete this.arbitrateRecord.arbitrateReject;
this.checkArbitrateRecordFn({
id: this.form.id,
agreeOrNotCheck: 2,
arbitrateRecord: this.arbitrateRecord,
});
}
} else if (parms == 3) {
this.adjudicationSignatureFn({
id: this.form.id,
@@ -308,6 +340,24 @@ export default {
paramsData.arbitrateRecord = this.arbitrateRecord;
paramsData.id = this.form.id
this.getRegenerationDocument(paramsData)
} else if (parms == 5) {
this.arbitratorCheckArbitrateRecordFn({
id: this.form.id,
agreeOrNotCheck: 1,
arbitrateRecord: this.arbitrateRecord,
});
} else if (parms == 6) {
debugger
if (!that.arbitrateRecord.arbitrateReject) {
this.$message.error('请输入拒绝原因');
return
} else {
this.arbitratorCheckArbitrateRecordFn({
id: this.form.id,
agreeOrNotCheck: 2,
arbitrateRecord: this.arbitrateRecord,
});
}
}
}
});
@@ -315,10 +365,6 @@ export default {
cancel() {
this.$emit("cancelpaymentdetails");
},
// 清除画布
handleReset() {
this.$refs["esign"].reset(); //清空画布
},
},
};
</script>
+104 -13
View File
@@ -7,17 +7,17 @@
<el-form-item label="案件状态" prop="caseStatus">
<el-select :disabled="caseStatusType" v-model="queryParams.caseStatus" placeholder="请选择案件状态" clearable
@keyup.enter.native="handleQuery">
<el-option v-for="dict in caseStatus" :key="dict.dictSort" :label="dict.dictLabel"
:value="dict.dictSort"></el-option>
<el-option v-for="dict in caseStatus" :key="dict.dictValue" :label="dict.dictLabel"
:value="dict.dictValue"></el-option>
</el-select>
</el-form-item>
<el-form-item label="是否完成" prop="selectCaseStatus">
<!-- <el-form-item label="是否完成" prop="selectCaseStatus">
<el-select v-model="queryParams.selectCaseStatus" placeholder="请选择状态" clearable
@keyup.enter.native="handleQuery">
<el-option v-for="dict in selectCaseStatusList" :key="dict.value" :label="dict.label"
:value="dict.value"></el-option>
</el-select>
</el-form-item>
</el-form-item> -->
<!-- <el-form-item label="开庭日期" prop="hearDate">
<el-date-picker v-model="queryParams.hearDate" type="daterange" range-separator="至" start-placeholder="开始日期"
end-placeholder="结束日期">
@@ -37,6 +37,18 @@
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="operateClick(5)"
v-hasPermi="['awardManagement:list:check']">案件批量核查</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="batchSignature"
v-hasPermi="['awardManagement:list:signature']"
>批量签名
</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="batchPrinting"
v-hasPermi="['awardManagement:list:officialSeal']"
>批量用印
</el-button>
</el-col>
</el-row>
<el-table v-loading="loading" :data="dataList" style="width: 100%">
<el-table-column label="序号" type="index" align="center">
@@ -62,17 +74,20 @@
v-if="scope.row.filearbitraUrl && scope.row.filearbitraUrl !== ''"
@click="showModel(scope.row, 0)">查看裁决书</el-button>
<el-button size="mini" type="text" icon="el-icon-edit"
v-if="scope.row.caseStatus == 11 && checkPermi(['awardManagement:list:check']) && btnStatus"
@click="showModel(scope.row, 1)">核查</el-button>
v-if="scope.row.caseStatus == 11 && checkPermi(['awardManagement:list:secretarycheck'])"
@click="showModel(scope.row, 1)">确认裁决书</el-button>
<el-button size="mini" type="text" icon="el-icon-edit"
v-if="scope.row.caseStatus == 18 && checkPermi(['awardManagement:list:check']) && btnStatus"
@click="showModel(scope.row, 4)">核查裁决书</el-button>
<el-button size="mini" type="text" icon="el-icon-edit"
v-if="scope.row.caseStatus == 12 && checkPermi(['awardManagement:list:confirmaward']) && btnStatus"
@click="showModel(scope.row, 2)">确认裁决书</el-button>
@click="showModel(scope.row, 2)">审核裁决书</el-button>
<el-button size="mini" type="text" icon="el-icon-edit"
v-if="scope.row.caseStatus == 13 && checkPermi(['awardManagement:list:sign']) && btnStatus"
@click="showModel(scope.row, 3)">签名</el-button>
<el-button size="mini" type="text" icon="el-icon-edit"
v-if="scope.row.caseStatus == 14 && checkPermi(['awardManagement:list:signprint']) && btnStatus"
@click="showaffixModel(scope.row, 4)">用印申请</el-button>
@click="showaffixModel(scope.row, 4)">用印</el-button>
<!-- v-if="scope.row.caseStatus > 15" -->
<el-button size="mini" type="text" icon="el-icon-truck"
v-if="scope.row.caseStatus > 15 && checkPermi(['delivery:list:detail'])"
@@ -84,6 +99,7 @@
<el-button size="mini" type="text" icon="el-icon-edit"
v-if="scope.row.caseStatus == 16 && checkPermi(['awardManagement:list:file']) && btnStatus"
@click="showCasefilingModel(scope.row, 6)">案件归档</el-button>
<el-button size="mini" type="text" icon="el-icon-tickets" @click="detailsAwardList(scope.row)">案件详情</el-button>
</template>
</el-table-column>
</el-table>
@@ -102,6 +118,14 @@
<operateDialog :queryParams="queryParams" :operateStatus="operateStatus" :operateVisable="operateVisable"
@getcaseApply="getList" :operateTitle="operateTitle" @cancelOperate="cancelOperate" :operateData="operateData">
</operateDialog>
<!-- 裁决书案件详情 -->
<detailsAward :showarchiveDetails="showarchiveDetails" @cancelDetail="cancelDetail" :detailsAwardNum="detailsAwardNum" :videoList="videoList"
:flagLoadingS="flagLoadingS" :trialTranscripts="trialTranscripts"
></detailsAward>
<!-- 批量签名 -->
<batchSignatures :signatureVisable="signatureVisable" @signatureOperate="signatureOperate"></batchSignatures>
<!-- 批量用印 -->
<batchPrintings :printingVisable="printingVisable" @printingOperate="printingOperate"></batchPrintings>
</div>
</template>
@@ -121,11 +145,24 @@ import paymentdetailsDialog from "./components/paymentdetailsDialog.vue";
import mailawardDialog from './components/MailawardDialog.vue';
import expressDeliveryDialog from './components/expressDeliveryDialog.vue';
import operateDialog from '@/views/caseManagement/components/operateDialog.vue'
import detailsAward from './components/detailsAward.vue'
import { getDicts } from '@/api/system/dict/data.js'
import { videoList } from "@/api/caseFiling/caseFiling";
import {attachListByCaseId} from "@/api/caseManagement/caseManagement"
import batchSignatures from "./components/batchSignatures.vue"
import batchPrintings from "./components/batchPrintings.vue"
export default {
name: "paymentList",
dicts: ["case_status"],
components: { paymentdetailsDialog, mailawardDialog, expressDeliveryDialog, operateDialog },
components: {
paymentdetailsDialog,
mailawardDialog,
expressDeliveryDialog,
operateDialog,
detailsAward,
batchSignatures,
batchPrintings
},
data() {
return {
queryParams: {
@@ -152,6 +189,11 @@ export default {
rules: {},
dataList: [],
detailform: {}, //缴费详情数据
detailsAwardNum:{},//裁决书数据
signatureVisable:false,//批量签名
printingVisable:false,
videoList:"", //视频数据
trialTranscripts:[],//庭审笔录
openDialog: false, //缴费详情数据弹框
flag: null,
openMailawardDialog: false, //送达裁决书页面
@@ -159,10 +201,13 @@ export default {
showDelivery: false, //快递信息弹框
deliveryDataArr: [],//快递信息数据
flagLoading: true,
flagLoadingS: true,
operateVisable: false,
operateData: {},
operateStatus: 0,
operateTitle: "",
// 裁决书详情
showarchiveDetails: false,
selectCaseStatusList: [
{
label: "待办案件",
@@ -182,9 +227,9 @@ export default {
this.caseStatus = res.data;
let params = this.$route.params.status;
if (params) {
this.queryParams.caseStatus = params;
this.queryParams.caseStatus = params + '';
}
this.queryParams.caseStatusList = [11, 12, 13, 14, 15, 16]
this.queryParams.caseStatusList = [11, 12, 13, 14, 15, 16, 18]
this.getList(this.queryParams);
})
// 裁决书列表不显示 生成裁决书
@@ -193,6 +238,15 @@ export default {
methods: {
cancelOperate() {
this.operateVisable = false;
},
cancelDetail(){
this.showarchiveDetails = false;
},
signatureOperate(){
this.signatureVisable = false;
},
printingOperate(){
this.printingVisable = false;
},
operateClick(type) {
this.operateVisable = true;
@@ -208,7 +262,7 @@ export default {
} else if (type == 3) {
this.operateTitle = '批量归档';
this.operateStatus = 3;
}else if (type == 5) {
} else if (type == 5) {
this.operateTitle = '批量核查';
this.operateStatus = 5;
}
@@ -273,6 +327,12 @@ export default {
window.open(url)
})
break;
case 4:
this.getDetail({ id: row.id });
this.openDialog = true;
this.title = "审核裁决书";
this.flag = 4;
break;
default:
break;
}
@@ -339,7 +399,7 @@ export default {
},
// 根据案件id查询邮件
emailByCaseIdFn(val) {
emailByCaseId({id: val}).then((res) => {
emailByCaseId({ id: val }).then((res) => {
this.emailobj = res.data
})
},
@@ -347,8 +407,39 @@ export default {
getDetail(parms) {
caseApplicationDetail(parms).then((res) => {
this.detailform = res.data;
this.detailsAwardNum = res.data;
console.log(this.detailsAwardNum)
});
},
// 裁决书详情
detailsAwardList(row){
this.showarchiveDetails = true
this.getDetail({ id: row.id })
this.getvideoList({ caseId: row.id })
this.getAttachListByCaseId({caseAppliId:row.id,annexType:11})
this.flagLoadingS = false
},
// 根据id查询视频列表
getvideoList(data){
videoList(data).then(res => {
this.videoList = res.data;
})
},
//根据案件id和类型查询附件
getAttachListByCaseId(data){
attachListByCaseId(data).then(res =>{
this.trialTranscripts = res.data;
})
},
// 批量签名
batchSignature(){
this.signatureVisable = true;
},
// 批量用印
batchPrinting(){
this.printingVisable = true;
}
},
};
</script>
@@ -0,0 +1,387 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="80px">
<el-form-item label="案件批号:" prop="batchNumber">
<el-input v-model="queryParams.batchNumber" placeholder="请输入批号" clearable @keyup.enter.native="handleQuery" />
</el-form-item>
<el-form-item label="申请人" prop="applicantName">
<el-cascader v-model="queryParams.nameId" :options="options" @change="changeDept" :props="{ checkStrictly: true }"
clearable></el-cascader>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-table v-loading="loading" style="width: 100%" :data="dataList">
<el-table-column label="序号" type="index" align="center">
<template slot-scope="scope">
<span>{{
(queryParams.pageNum - 1) * queryParams.pageSize + scope.$index + 1
}}</span>
</template>
</el-table-column>
<el-table-column label="案件批号" align="center" prop="batchNumber" :show-overflow-tooltip="true" />
<el-table-column label="申请人" align="center" prop="applicantName" :show-overflow-tooltip="true" />
<el-table-column label="仲裁方式" align="center" prop="arbitratMethodName" :show-overflow-tooltip="true" />
<el-table-column label="仲裁员" align="center" prop="arbitratorName" :show-overflow-tooltip="true" />
<el-table-column label="案件状态" align="center" prop="caseStatusName" :show-overflow-tooltip="true">
<template slot-scope="scope">
<el-tag type="success">{{ scope.row.caseStatusName}}</el-tag>
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="350">
<template slot-scope="scope">
<el-button size="mini" type="text" icon="el-icon-view" @click="viewingCasesBtn(scope.row)">查看案件列表</el-button>
<el-button size="mini" type="text" icon="el-icon-check" @click="confirmSubmission(scope.row)" v-if="scope.row.caseStatusstr == '0' && checkPermi(['batchManagement:list:submit'])">提交</el-button>
<el-button size="mini" type="text" icon="el-icon-view" @click="filingFeview(scope.row)" v-if="scope.row.caseStatusstr == '1' && checkPermi(['batchManagement:list:filingReview'])">立案审查</el-button>
<el-button size="mini" type="text" icon="el-icon-tickets" @click="batchPayments(scope.row)" v-if="scope.row.caseStatusstr == '2' && checkPermi(['batchManagement:list:pay'])">缴费</el-button>
<el-button size="mini" type="text" icon="el-icon-tickets" @click="paymentConfir(scope.row)" v-if="scope.row.caseStatusstr == '3' && checkPermi(['batchManagement:list:payconfirm'])">缴费确认</el-button>
<el-button size="mini" type="text" icon="el-icon-check" @click="courtReviews(scope.row)" v-if="scope.row.caseStatusstr == '5' && checkPermi(['batchManagement:list:checkgroup'])">组庭审核</el-button>
<el-button size="mini" type="text" icon="el-icon-sort" @click="courtConfirmations(scope.row)" v-if="scope.row.caseStatusstr == '6' && checkPermi(['batchManagement:list:confirmgroup'])">组庭确认</el-button>
<el-button size="mini" type="text" @click="reviewArbitrations(scope.row)" v-if="scope.row.caseStatusstr == '7' && checkPermi(['batchManagement:list:checkarbitrationway'])">审核仲裁方式</el-button>
<el-button size="mini" type="text" @click="batchWrittenReviewy(scope.row)" v-if="scope.row.caseStatusstr == '9' && checkPermi(['batchManagement:list:hear'])">书面审理</el-button>
<!-- <el-button size="mini" type="text" @click="batchWrittenReviewy(scope.row)">书面审理</el-button> -->
<el-button size="mini" type="text" @click="secretaryArbitration(scope.row)" v-if="scope.row.caseStatusstr == '11' && checkPermi(['batchManagement:list:secretarycheck'])">秘书确认</el-button>
<el-button size="mini" type="text" @click="arbitratorsVerify(scope.row)" v-if="scope.row.caseStatusstr == '18' && checkPermi(['batchManagement:list:arbitratorConfirm'])">仲裁员确认</el-button>
<el-button size="mini" type="text" @click="departmentDocuments(scope.row)" v-if="scope.row.caseStatusstr == '12' && checkPermi(['batchManagement:list:confirmaward'])">部门长确认</el-button>
<el-button size="mini" type="text" @click="batchSignatures(scope.row)" v-if="scope.row.caseStatusstr == '13' && checkPermi(['batchManagement:list:sign'])">签名</el-button>
<el-button size="mini" type="text" @click="batchPrintings(scope.row)" v-if="scope.row.caseStatusstr == '14' && checkPermi(['batchManagement:list:signprint'])">用印</el-button>
<el-button size="mini" type="text" @click="servicearBitration(scope.row)" v-if="scope.row.caseStatusstr == '15' && checkPermi(['batchManagement:list:sendaward'])">送达裁决书</el-button>
<el-button size="mini" type="text" @click="archive(scope.row)" v-if="scope.row.caseStatusstr == '16' && checkPermi(['batchManagement:list:file'])">案件归档</el-button>
</template>
</el-table-column>
</el-table>
<pagination :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
@pagination="getList(queryParams)"
/>
<!-- 缴费 -->
<batchPayment :caseVisablePay="caseVisablePay" @cancelCasePay="cancelCasePay" :batchPaymentValue="batchPaymentValue" :totalFees="totalFees" :queryParams="queryParams" @getList="getList"></batchPayment>
<!-- 缴费确认 -->
<paymentConfirmation :caseVisablePayment="caseVisablePayment" @cancelCasePayment="cancelCasePayment" :confirmPaymen="confirmPaymen" :queryParams="queryParams" @getList="getList" :totalFeeConfir="totalFeeConfir"></paymentConfirmation>
<!-- 组庭审核 -->
<courtReview :caseVisableReview="caseVisableReview" @cancelCaseReview="cancelCaseReview" :formateCourtData="formateCourtData" :queryParams="queryParams" @getList="getList"></courtReview>
<!-- 查看案件列表 -->
<!-- <viewingCases :caseVisableViewing="caseVisableViewing" @cancelCaseViewing="cancelCaseViewing"></viewingCases> -->
<!-- 组庭确认 -->
<courtConfirmation :showcourtReview="showcourtReview" @cancelcourtReview="cancelcourtReview" :courtConfirmationData="courtConfirmationData" :queryParams="queryParams" @getList="getList"></courtConfirmation>
<!-- 审核仲裁方式 -->
<reviewArbitrationMethod :caseVisableReviewl="caseVisableReviewl" @cancelCaseReviewl="cancelCaseReviewl" :queryParams="queryParams" @getList="getList" :reviewMethod="reviewMethod"></reviewArbitrationMethod>
<!-- 签名 -->
<batchSignature :caseVisableSignature="caseVisableSignature" @cancelCaseSignature="cancelCaseSignature" :queryParams="queryParams" @getList="getList" :signatureData="signatureData"></batchSignature>
<!-- 用印 -->
<batchPrinting :caseVisablePrinting="caseVisablePrinting" @cancelCasePrinting="cancelCasePrinting" :queryParams="queryParams" @getList="getList" :printingData="printingData"></batchPrinting>
<!-- 立案审查 -->
<filingReview :caseVisableReviewF="caseVisableReviewF" @cancelCaseReviewF="cancelCaseReviewF" :filingFeviewbatchNumber="filingFeviewbatchNumber" :queryParams="queryParams" @getList="getList"></filingReview>
<!-- 秘书审核仲裁文书 -->
<arbitratorsDocuments :caseVisableSecretary="caseVisableSecretary" @cancelCaseSecretary="cancelCaseSecretary" :queryParams="queryParams" @getList="getList" :secretaryArb="secretaryArb"></arbitratorsDocuments>
<!-- 仲裁员审核仲裁文书 -->
<arbitratorsvVerify :caseVisablearBitration="caseVisablearBitration" @cancelCaseBitration="cancelCaseBitration" :queryParams="queryParams" @getList="getList" :arbitratorDeter="arbitratorDeter"></arbitratorsvVerify>
<!-- 部门长审核仲裁文书 -->
<departmentReviews :caseVisablearHead="caseVisablearHead" @cancelCaseHead="cancelCaseHead" :queryParams="queryParams" @getList="getList" :departmentDoc="departmentDoc"></departmentReviews>
</div>
</template>
<script>
import {listBatch,submitCaseApplicationBatch,
payListBatch,writtenHearBatch,
caseFileBatch,serviceBatch,getSignUrlBatch
} from '@/api/batchManagement/batchManagement.js'
import { listDept } from "@/api/system/dept";
import batchPayment from './components/batchPayment.vue'
import paymentConfirmation from './components/paymentConfirmation.vue'
import courtReview from './components/courtReview.vue'
import viewingCases from './components/viewingCases.vue'
import courtConfirmation from './components/courtConfirmation.vue'
import reviewArbitrationMethod from './components/reviewArbitrationMethod.vue'
import batchSignature from './components/batchSignature.vue'
import batchPrinting from './components/batchPrinting.vue'
import filingReview from './components/filingReview.vue'
import arbitratorsDocuments from './components/arbitratorsDocuments.vue'
import arbitratorsvVerify from './components/arbitratorsvVerify.vue'
import departmentReviews from './components/departmentReviews.vue'
export default {
components: {
batchPayment,
paymentConfirmation,
courtReview,
viewingCases,
courtConfirmation,
reviewArbitrationMethod,
batchSignature,
batchPrinting,
filingReview,
arbitratorsDocuments,
arbitratorsvVerify,
departmentReviews
},
data() {
return {
queryParams: {
pageNum: 1,
pageSize: 10
},
// 遮罩层
loading: false,
// 总条数
total: 0,
filingFeviewbatchNumber:'',
batchPaymentValue:{},
confirmPaymen:{},//批量确认缴费
totalFees:{},//缴费总金额
totalFeeConfir:{},//确认缴费总金额
formateCourtData:{},//组庭审核
courtConfirmationData:{},//组庭确认
secretaryArb:{},//秘书确认
arbitratorDeter:{},//仲裁员确认
departmentDoc:{}, //部门长确认
reviewMethod:{},//仲裁员审核仲裁方式
signatureData:{},//签名批号
printingData:{},//批量用印批号
caseVisablePay: false,//批量缴费弹窗
caseVisablePayment:false,//批量缴费确认
caseVisableReview:false,//批量组庭审核
caseVisableViewing:false,//查看案件列表
showcourtReview:false,//批量组庭确认
caseVisableReviewl:false,//批量审核仲裁方式
caseVisableSignature:false,//批量签名
caseVisablePrinting:false,//批量用印
caseVisableReviewF:false, //批量立案审查
caseVisableSecretary:false,//秘书审核文书
caseVisablearBitration:false,//仲裁员核查文书
caseVisablearHead:false,//部门长审核文书
dataList: [],
editData:{},
options: [], //机构数据
};
},
created() {
this.getList(this.queryParams)
this.getInstitution();
},
methods: {
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList(this.queryParams);
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
(this.queryParams.applicantName = ""),
(this.queryParams.nameId = ""),
this.handleQuery();
},
// 机构发生变化
changeDept(data) {
if(data){
this.queryParams.nameId = data[0];
}
},
// 获取机构数据
getInstitution() {
listDept().then((res) => {
res.data.forEach((item) => {
item.value = item.deptId;
item.label = item.deptName;
});
this.options = this.handleTree(res.data, "deptId");
});
},
// 查询列表
getList(parm){
this.loading = true;
listBatch(parm).then(res=>{
this.dataList = res.rows;
this.total = res.total
this.loading = false;
})
},
// 批量提交
confirmSubmission(row){
console.log(row)
this.$modal.confirm("您确定要批量提交吗?").then((res) => {
this.submitCaseApplicationBatchs({ batchNumber: row.batchNumber })
}).catch(() =>{
})
},
// 批量提交接口
submitCaseApplicationBatchs(data) {
submitCaseApplicationBatch(data).then(res => {
this.$modal.msgSuccess("提交成功!");
this.getList(this.queryParams);
})
},
// 批量立案审查
filingFeview(row){
console.log(row)
this.filingFeviewbatchNumber = row.batchNumber
this.caseVisableReviewF = true
},
cancelCaseReviewF(){
this.caseVisableReviewF = false
},
// 批量缴费
batchPayments(row){
this.batchPaymentValue = row
let batchNumber = row.batchNumber.toString()
payListBatch({batchNumber:batchNumber}).then(res=>{
this.totalFees = res.data
})
this.caseVisablePay = true
},
cancelCasePay(){
this.caseVisablePay = false
},
// 批量缴费确认
paymentConfir(row){
this.confirmPaymen = row
let batchNumber = row.batchNumber.toString()
payListBatch({batchNumber:batchNumber}).then(res=>{
this.totalFeeConfir = res.data
})
this.caseVisablePayment = true
},
cancelCasePayment(){
this.caseVisablePayment = false
},
// 批量组庭审核
courtReviews(row){
this.formateCourtData = row;
this.caseVisableReview = true
},
cancelCaseReview(){
this.caseVisableReview = false
},
// 查看案件列表
viewingCasesBtn(row){
let batchNumber = row.batchNumber
if(batchNumber){
this.$router.push({ name: 'CaseManagement/caseList', params: { batchNumber: batchNumber + '' } })
}
},
// 批量组庭确认
courtConfirmations(row){
this.courtConfirmationData = row
console.log(row)
this.showcourtReview = true
},
cancelcourtReview(){
this.showcourtReview = false
},
// 批量审核仲裁方式
reviewArbitrations(row){
console.log(row)
this.reviewMethod = row
this.caseVisableReviewl = true
},
cancelCaseReviewl(){
this.caseVisableReviewl = false
},
// 批量书面审理
batchWrittenReviewy(row){
this.$modal.confirm("你确定要批量书面审理吗?").then(res => {
writtenHearBatch({batchNumber: row.batchNumber}).then(res=>{
this.$modal.msgSuccess("提交成功!");
this.getList(this.queryParams);
})
})
},
// 批量归档
archive(row){
this.$modal.confirm("你确定要批量归档吗?").then((res) => {
this.caseFileBatchs({ batchNumber: row.batchNumber})
}).catch(() =>{
})
},
// 批量归档接口
caseFileBatchs(vals){
caseFileBatch(vals).then(res=>{
this.$modal.msgSuccess("归档成功!");
this.getList(this.queryParams);
})
},
// 批量签名
batchSignatures(row){
this.signatureData = row
this.caseVisableSignature = true
// this.$modal.confirm("你确定要批量签名吗?").then(res => {
// getSignUrlBatch({
// batchNumber: row.batchNumber
// }).then(res=>{
// window.open(res.data.signUrl)
// this.$modal.confirm("你已经批量签名了吗?").then(res => {
// this.$modal.msgSuccess("签名成功!");
// this.getList(this.queryParams);
// })
// })
// }).catch(() =>{
// })
},
cancelCaseSignature(){
this.caseVisableSignature = false
},
// 批量签名
batchPrintings(row){
this.printingData = row
this.caseVisablePrinting = true
},
cancelCasePrinting(){
this.caseVisablePrinting = false
},
// 生成裁决书
arbitrationAward(){
this.$modal.confirm("你确定要批量生成裁决书吗?").then((res) => {
// this.deleteSealFn({ id: row.id })
}).catch(() =>{
})
},
//仲裁文书送达
servicearBitration(row){
this.$modal.confirm("你确定要批量仲裁文书批量送达吗?").then((res) => {
this.serviceBatchs({ batchNumber: row.batchNumber})
}).catch(() =>{
})
},
serviceBatchs(val){
serviceBatch(val).then(res=>{
this.$modal.msgSuccess("批量送达成功!");
this.getList(this.queryParams);
})
},
// 秘书审核仲裁文书
secretaryArbitration(row){
this.secretaryArb = row
this.caseVisableSecretary = true
},
cancelCaseSecretary(){
this.caseVisableSecretary = false
},
// 仲裁员审核文书
arbitratorsVerify(row){
this.arbitratorDeter = row
this.caseVisablearBitration = true
},
cancelCaseBitration(){
this.caseVisablearBitration = false
},
// 部门长审核仲裁文书
departmentDocuments(row){
this.departmentDoc =row
this.caseVisablearHead = true
},
cancelCaseHead(){
this.caseVisablearHead = false
}
},
};
</script>
<style lang="scss" scoped></style>
@@ -0,0 +1,52 @@
<template>
<div>
<!-- 秘书批量审核 -->
<el-dialog title="秘书批量审核" :visible="caseVisableSecretary" destroy-on-close width="30%" @close="cancel" center>
<div slot="footer" class="dialog-footer">
<el-button type="primary" class="endbutton" @click="secretaryConfirmed"><span>确认</span></el-button>
<el-button class="endbutton" @click="cancel"><span>取 消</span></el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import {verificationArbitrateRecordBatch} from '@/api/batchManagement/batchManagement.js'
export default {
props: ["caseVisableSecretary","queryParams","secretaryArb"],
dicts: ["manager_type"],
data() {
return {
};
},
watch: {
caseVisableSecretary(val) {
if (val) {
this.ruleForm = {};
}
}
},
created() {
},
methods: {
secretaryConfirmed(){
verificationArbitrateRecordBatch({batchNumber:this.secretaryArb.batchNumber}).then(res=>{
this.$modal.msgSuccess("确认成功");
this.cancel();
this.$emit("getList", this.queryParams);
}).catch((err) => {});
},
cancel() {
this.$emit("cancelCaseSecretary");
},
},
}
</script>
<style lang="scss" scoped>
::v-deep .el-dialog {
background: #ffffff;
border-radius: 20px;
}
</style>
@@ -0,0 +1,94 @@
<template>
<div>
<!-- 仲裁员批量审核 -->
<el-dialog title="仲裁员批量审核" :visible="caseVisablearBitration" destroy-on-close width="30%" @close="cancel" center>
<div>
<el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="100px">
<el-form-item label="审核意见" prop="checkOpinion">
<el-input type="textarea" :rows="2" placeholder="请输入审核意见" v-model="ruleForm.checkOpinion"></el-input>
</el-form-item>
<el-form-item label="驳回原因">
<el-input type="textarea" :rows="2" placeholder="请输入驳回原因" v-model="ruleForm.arbitrateReject"></el-input>
</el-form-item>
</el-form>
</div>
<div slot="footer" class="dialog-footer">
<el-button type="primary" class="endbutton" @click="submitForm(1)"><span>同 意</span></el-button>
<el-button type="danger" class="endbutton" @click="submitForm(2)"><span>驳 回</span></el-button>
<el-button class="endbutton" @click="cancel"><span>取 消</span></el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import {checkArbitrateRecordBatch} from '@/api/batchManagement/batchManagement.js'
export default {
props: ["caseVisablearBitration","queryParams","arbitratorDeter"],
data() {
return {
ruleForm: {},
rules: {
checkOpinion: [
{
required: true,
message: "审核意见不能为空",
trigger: "blur",
},
],
}
};
},
watch: {
caseVisablearBitration(val) {
if (val) {
// this.ruleForm = {};
}
}
},
created() {
},
methods: {
submitForm(val){
this.$refs["ruleForm"].validate((valid) => {
if(valid){
if(val==1){
let values = {
batchNumber:this.arbitratorDeter.batchNumber,
agreeOrNotCheck:1,
arbitrateRecord:this.ruleForm
}
checkArbitrateRecordBatch(values).then(res=>{
this.$modal.msgSuccess("确认成功");
this.cancel();
this.$emit("getList", this.queryParams);
}).catch((err) => {});
}else if(val==2){
let values = {
batchNumber:this.arbitratorDeter.batchNumber,
agreeOrNotCheck:2,
arbitrateRecord:this.ruleForm
}
checkArbitrateRecordBatch(values).then(res=>{
this.$modal.msgSuccess("驳回成功");
this.cancel();
this.$emit("getList", this.queryParams);
}).catch((err) => {});
}
}
})
},
cancel() {
this.$emit("cancelCaseBitration");
},
},
}
</script>
<style lang="scss" scoped>
::v-deep .el-dialog {
background: #ffffff;
border-radius: 20px;
}
</style>
@@ -0,0 +1,239 @@
<template>
<div>
<el-dialog title="批量确认缴费" :visible="caseVisablePay" @close="payCancel" width="800px" append-to-body
:destroy-on-close="true" center>
<el-descriptions>
<el-descriptions-item label="案件总金额">{{totalFees.totalFee}}元</el-descriptions-item>
<el-descriptions-item label="申请人">{{batchPaymentValue.name}}</el-descriptions-item>
</el-descriptions>
<div class="paySelectType">
<el-radio-group v-model="paySelect" @input="changPayType">
<el-radio :label="0">线上支付</el-radio>
<el-radio :label="1">线下支付</el-radio>
</el-radio-group>
</div>
<div class="payupload">
<span>上传支付凭证:</span>
<div class="uploadBtn">
<el-upload class="upload-demo" ref="upload" :action="UploadUrl()" :headers="headers" :data="filedata"
:on-preview="handlePreview" :on-remove="handleRemove" :on-change="beforeUpload" :on-success="handlSuccess" :file-list="fileList"
>
<el-button slot="trigger" size="small" type="primary">选取文件</el-button>
<!-- <el-button style="margin-left: 10px;" size="small" type="success" @click="submitUpload">上传到服务器</el-button> -->
<div slot="tip" class="el-upload__tip">只能上传jpg/png文件,且不超过500kb</div>
</el-upload>
</div>
</div>
<div class="payType" v-if="paySelect == 0">
<span>请选择支付方式:</span>
<i class="iconfont icon-weixinzhifu" @click="pay(0)"></i>
<i class="iconfont icon-zhifubao" @click="pay(1)"></i>
</div>
<div class="payImg">
<div id="qrcodeImg"></div>
</div>
<div class="payTitle">{{ payMain }}</div>
<div slot="footer" class="dialog-footer">
<el-button @click="payCancel" class="endbutton"><span style="color:black">取 消</span></el-button>
<el-button @click="submitUpload" type="primary" class="endbutton"><span>确认缴费</span></el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { casePay, confirmPayDig } from "@/api/pay/pay";
import {confirmPayBatch,casePayBatch} from '@/api/batchManagement/batchManagement.js'
import QRCode from "qrcodejs2";
import { getToken } from "@/utils/auth";
export default {
props: ["caseVisablePay", "payForm", "queryParams","payId","batchPaymentValue","totalFees"],
data() {
return {
// key: value
// 支付文字
payMain: "",
timer: null,
paySelect: 1,//支付线上/线下
fileList: [],
headers: {
Authorization: "Bearer " + getToken(),
},
filedata: {
annexType: 8,
},
submitForm:{
payType:1,
payOrderList:[],
caseId:null,
}
};
},
methods: {
UploadUrl() {
return window.location.origin + "/API/evidence/upload";
},
//选择支付方式(线上,线下)
changPayType(data) {
if(data == 1){
document.getElementById("qrcodeImg").innerHTML = "";
this.payMain = ""
}
this.submitForm.payType = data;
},
beforeUpload(flie, fileList) {
this.fileList = fileList;
},
// 文件上传成功
handlSuccess(res, file) {
this.submitForm.payOrderList.push({
annexId: res.data.annexId,
annexName:res.data.annexName
});
},
submitUpload() {
if (this.fileList.length < 1) {
this.$modal.msgError("请上传缴费凭证");
return
}
let batchNumber = this.batchPaymentValue.batchNumber.toString()
let submitForm = Object.assign(this.submitForm,{batchNumber:batchNumber})
confirmPayBatch(submitForm).then(res=>{
this.$modal.msgSuccess("缴费成功");
this.payCancel()
this.$emit("getList", this.queryParams);
})
},
handleRemove(file, fileList) {
(this.submitForm.payOrderList = []),
fileList.forEach((item) => {
console.log(item.response.data,"item");
this.submitForm.payOrderList.push({ annexId:item.response.data.annexId,annexName:item.response.data.annexName });
});
},
handlePreview(file) {
console.log(file);
},
// 生成二维码
qrcode(url) {
// 前端根据 URL 生成微信支付二维码
document.getElementById("qrcodeImg").innerHTML = "";
return new QRCode("qrcodeImg", {
width: 200,
height: 200,
text: url,
colorDark: "#000",
colorLight: "#fff",
});
},
// 支付
pay(val) {
if (this.totalFees.totalFee == 0 || !this.totalFees.totalFee) {
this.$message({
message: "此案件无需缴费",
type: "error",
});
return;
}
let payType = "";
if (val == 0) {
payType = "wxpay";
this.payMain = "请使用微信扫二维码支付";
} else if (val == 1) {
payType = "alipay";
this.payMain = "请使用支付宝扫二维码支付";
}
let batchNumber = this.batchPaymentValue.batchNumber.toString()
casePayBatch({
totalFee: this.totalFees.totalFee*100,
batchNumber:batchNumber,
tradeType: "native",
platform: payType,
}).then((res) => {
console.log(res)
this.paySrc = res.data.code_url;
this.qrcode(this.paySrc);
});
},
payCancel() {
this.$emit("cancelCasePay");
this.payMain = "";
},
},
watch:{
openPay(val){
if(val){
this.submitForm.payOrderList = []
this.paySelect = 1;
this.fileList = [];
this.filedata.id = this.payId;
this.submitForm.caseIds = [this.payId];
}
}
}
};
</script>
<style lang="scss" scoped>
.payType {
height: 80px;
line-height: 80px;
display: flex;
.icon-weixinzhifu {
font-size: 24px;
color: #27a56f;
margin-right: 15px;
}
.icon-zhifubao {
font-size: 24px;
color: #1d76cc;
}
}
.paySelectType {
margin-top: 20px;
margin-bottom: 20px;
}
.payupload {
display: flex;
.uploadBtn {}
}
.payImg {
width: 100%;
display: flex;
justify-content: center;
}
.payTitle {
margin-top: 20px;
width: 100%;
text-align: center;
}
::v-deep .el-dialog {
width: 800px;
background: #ffffff;
border-radius: 20px;
}
.endbutton {
width: 154px;
height: 37px;
border: 1px solid #d0d0d0;
border-radius: 19px;
span {
width: 31px;
height: 13px;
font-size: 16px;
font-family: Microsoft YaHei;
font-weight: 400;
color: #ffffff;
}
}
</style>
@@ -0,0 +1,113 @@
<template>
<div>
<!-- 批量用印 -->
<el-dialog title="批量用印" :visible="caseVisablePrinting" destroy-on-close width="30%" @close="cancel('courtReviewform')" center>
<!-- 查询机构信息 -->
<el-form ref="courtReviewform" :model="courtReviewform">
<el-form-item
label="查询机构:"
prop="Arbitor"
:rules="[
{
required: true,
message: '查询机构不能为空',
trigger: 'change',
},
]"
>
<el-select
placeholder="请选择查询机构"
@change="changeArbitor"
v-model="courtReviewform.Arbitor"
clearable
>
<el-option
v-for="item in atoDataList"
:key="item.id"
:label="item.identifyName"
:value="item.operPhone+item.id"
></el-option>
</el-select>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" class="endbutton" @click="confirmSeals"><span>确认用印</span></el-button>
<el-button class="endbutton" @click="cancel('courtReviewform')"><span>取 消</span></el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import {deptIdentifyList} from '@/api/officialSeal/officialSeal'
import {getSealUrlBatch} from '@/api/batchManagement/batchManagement.js'
export default {
props: ["caseVisablePrinting","queryParams","printingData"],
dicts: ["manager_type"],
data() {
return {
atoDataList:[],
courtReviewform: {},
Arbitor: "",
paramsdata:{
batchNumber:0,
psnAccount:""
},
};
},
watch: {
caseVisablePrinting(val) {
if (val) {
console.log(this.atoDataList)
}
}
},
created() {
this.getarbitrAtor()
},
methods: {
// 查询机构信息
getarbitrAtor() {
this.atoDataList =[]
deptIdentifyList({}).then((res) => {
res.rows.forEach(item => {
if(item.isUse ==1){
this.atoDataList.push(item);
}
});
});
},
// 下拉获取电话号码
changeArbitor(val){
this.paramsdata.psnAccount = val.slice(0,11)
},
// 确认用印
confirmSeals(){
this.$refs["courtReviewform"].validate((valid) => {
if(valid){
this.paramsdata.batchNumber= this.printingData.batchNumber
console.log(this.paramsdata)
getSealUrlBatch(this.paramsdata).then(res=>{
this.$modal.msgSuccess("确认成功");
this.cancel('courtReviewform');
this.$emit("getList", this.queryParams);
window.open(res.data.signUrl)
}).catch((err) => {
});
}
})
},
cancel(formName) {
this.$refs[formName].resetFields(); //清空下拉列表的内容
this.$emit("cancelCasePrinting");
},
},
}
</script>
<style lang="scss" scoped>
::v-deep .el-dialog {
background: #ffffff;
border-radius: 20px;
}
</style>
@@ -0,0 +1,107 @@
<template>
<div>
<!-- 批量签名 -->
<el-dialog title="批量签名" :visible="caseVisableSignature" destroy-on-close width="30%" @close="cancel('courtReviewform')" center>
<el-form ref="courtReviewform" :model="courtReviewform">
<el-form-item
label="仲裁员:"
prop="Arbitor"
:rules="[
{
required: true,
message: '仲裁员不能为空',
trigger: 'change'
},
]"
>
<el-select
placeholder="请选择仲裁员"
@change="changeArbitor"
v-model="courtReviewform.Arbitor"
clearable
>
<el-option
v-for="item in atoDataList"
:key="item.value"
:label="item.nickName"
:value="item.phonenumber+item.deptId"
></el-option>
</el-select>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" class="endbutton" @click="witnessing"><span>确认签名</span></el-button>
<el-button class="endbutton" @click="cancel('courtReviewform')"><span>取 消</span></el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { arbitrAtor} from "@/api/formationCourt/formationCourt";
import {getSignUrlBatch} from '@/api/batchManagement/batchManagement.js'
export default {
props: ["caseVisableSignature","queryParams","signatureData"],
dicts: ["manager_type"],
data() {
return {
courtReviewform: {
Arbitor: "",
},
Arbitor: "",
atoDataList:[],
paramsdata:{
batchNumber:0,
psnAccount:""
},
};
},
watch: {
caseVisableSignature(val) {
if (val) {
this.getarbitrAtor()
console.log(this.atoDataList)
}
}
},
created() {
// this.getarbitrAtor()
},
methods: {
// 获取仲裁员信息
getarbitrAtor() {
arbitrAtor({}).then((res) => {
this.atoDataList = res.rows;
});
},
changeArbitor(val) {
this.paramsdata.psnAccount =val.slice(0,11)
},
// 确认签名提交
witnessing(){
this.$refs["courtReviewform"].validate((valid) => {
if(valid){
this.paramsdata.batchNumber= this.signatureData.batchNumber
console.log(this.paramsdata)
getSignUrlBatch(this.paramsdata).then(res=>{
this.$modal.msgSuccess("确认成功");
this.cancel('courtReviewform');
this.$emit("getList", this.queryParams);
window.open(res.data.signUrl)
})
}
})
},
cancel(formName) {
this.$refs[formName].resetFields();
this.$emit("cancelCaseSignature");
},
},
}
</script>
<style lang="scss" scoped>
::v-deep .el-dialog {
background: #ffffff;
border-radius: 20px;
}
</style>
@@ -0,0 +1,236 @@
<template>
<div>
<!-- 批量组庭确认页面 -->
<el-dialog
title="批量组庭确认"
:visible="showcourtReview"
@close="cancel"
:destroy-on-close="true"
center
>
<el-form ref="courtReviewform" :model="courtReviewform">
<el-form-item label="是否同意组庭:">
<el-radio-group v-model="isAgreePendTral">
<el-radio :label="1">是</el-radio>
<el-radio :label="0">否</el-radio>
</el-radio-group>
</el-form-item>
<!-- </el-form> -->
<!-- <el-tag type="warning" v-if="noArbitrator"
>当前案件未指定仲裁员,请先指定仲裁员!</el-tag
> -->
<div style="display: inline-flex; margin: 1% 9%">
<div v-if="isAgreePendTral == 0">请选择仲裁员</div>
<div v-if="isAgreePendTral == 1">
当前案件仲裁员
</div>
</div>
<div v-if="isAgreePendTral == 1" class="nowarbitrator">
<el-tag size="medium">
{{ courtConfirmationData.arbitratorName }}
</el-tag>
</div>
<!-- <div v-if="noArbitrator || isAgreePendTral == 0"> -->
<el-form-item
label="仲裁员:"
prop="Arbitor"
v-if="noArbitrator || isAgreePendTral == 0"
:rules="[
{
required: true,
message: '仲裁员不能为空',
trigger: 'blur',
},
]"
>
<el-select
placeholder="请选择仲裁员"
@change="changeArbitor"
v-model="courtReviewform.Arbitor"
clearable
>
<el-option
v-for="item in dataList"
:key="item.value"
:label="item.nickNameAndNum"
:value="item.userId"
></el-option>
</el-select>
</el-form-item>
<!-- </div> -->
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm" class="endbutton"
><span>确 定</span>
</el-button>
<el-button @click="cancel" class="endbutton1"
><span> 取 消</span></el-button
>
</div>
</el-dialog>
</div>
</template>
<script>
import { pendTralSure } from "@/api/caseManagement/caseManagement.js";
import { arbitrAtor} from "@/api/formationCourt/formationCourt";
import {pendTralSureBatch} from '@/api/batchManagement/batchManagement.js'
import moment from "moment";
export default {
name: "courtReviewDialog",
props: ["showcourtReview", "courtConfirmationData", "queryParams"],
data() {
return {
dataList: [],
hearDate: "",
courtReviewform: {
hearDate: null,
},
noArbitrator: false,
isAgreePendTral: 1,
paramsdata: {},
Arbitor: "",
};
},
created() {
this.getarbitrAtor();
},
watch: {
showcourtReview(val) {
if (val) {
this.isAgreePendTral = 1;
this.courtReviewform.hearDate = null;
}
},
// form: {
// handler(val) {
// if (val.arbitratorName == null) {
// this.noArbitrator = true;
// } else {
// this.noArbitrator = false;
// }
// },
// },
},
methods: {
// 获取仲裁员信息
getarbitrAtor() {
arbitrAtor({}).then((res) => {
this.dataList = res.rows;
this.total = res.total;
});
},
changeArbitor(val) {
this.arbitrators = [];
this.dataList.forEach((item) => {
if (item.userId == val) {
this.arbitrators.push({
id: item.userId,
arbitratorName: item.nickName,
});
}
});
},
submitForm() {
// if (this.noArbitrator) {
// this.paramsdata = {
// id: this.form.id,
// arbitrators: this.arbitrators,
// };
// } else {
// if (this.isAgreePendTral == 0) {
// this.paramsdata = {
// isAgreePendTral: 0,
// id: this.form.id,
// arbitrators: this.arbitrators,
// };
// } else {
// this.paramsdata = {
// isAgreePendTral: 1,
// id: this.form.id,
// };
// }
// }
if (this.isAgreePendTral == 0) {
this.paramsdata = {
isAgreePendTral: 0,
batchNumber: this.courtConfirmationData.batchNumber,
arbitrators: this.arbitrators,
};
} else {
this.paramsdata = {
isAgreePendTral: 1,
batchNumber: this.courtConfirmationData.batchNumber,
};
}
this.$refs["courtReviewform"].validate((valid) => {
if (valid) {
pendTralSureBatch(this.paramsdata)
.then((res) => {
this.$modal.msgSuccess("确认成功");
this.cancel();
this.$emit("getList", this.queryParams);
})
.catch((err) => {});
}
});
},
cancel() {
this.$emit("cancelcourtReview");
},
},
};
</script>
<style lang="scss" scoped>
::v-deep .el-dialog {
background: #ffffff;
border-radius: 20px;
}
.el-form-item {
margin-left: 10%;
}
.endbutton {
width: 124px;
height: 37px;
background: #0072ff;
border-radius: 19px;
span {
width: 32px;
height: 15px;
font-size: 16px;
font-family: Microsoft YaHei;
font-weight: 400;
color: #ffffff;
// line-height: 48px;
}
}
.endbutton1 {
width: 124px;
height: 37px;
background: #ffffff;
border: 1px solid #d0d0d0;
border-radius: 19px;
span {
width: 31px;
height: 13px;
font-size: 16px;
font-family: Microsoft YaHei;
font-weight: 400;
color: #959595;
// line-height: 48px;
}
}
.nowarbitrator {
margin-left: 10%;
}
::v-deep .el-form-item__error {
left: 90px;
}
</style>
@@ -0,0 +1,245 @@
<template>
<div>
<!-- 组庭界面 -->
<el-dialog
title="批量组庭审核"
:visible="caseVisableReview"
v-if="caseVisableReview"
@close="cancel"
destroy-on-close
center
>
<el-form
ref="formateCourtform"
:model="formateCourtform"
label-width="110px"
label-position="left"
>
<el-form-item label="是否同意组庭:">
<el-radio-group v-model="isAgreePendTral" @change="radioValue">
<el-radio :label="1">是</el-radio>
<el-radio :label="0">否</el-radio>
</el-radio-group>
</el-form-item>
<!-- <el-tag type="warning" v-if="noArbitrator"
>当前案件未指定仲裁员,请先指定仲裁员!</el-tag
>
<p></p> -->
<!-- <el-form ref="form"> -->
<!-- v-if="isAgreePendTral == 0 || noArbitrator" -->
<div style="display: inline-flex; margin-bottom: 8px">
<div v-if="isAgreePendTral !== 1">请选择仲裁员</div>
<!-- <div v-if="isAgreePendTral == 1">
当前案件仲裁员
</div> -->
</div>
<!-- <div
v-if="isAgreePendTral == 1"
class="nowarbitrator"
>
<el-tag size="medium">
</el-tag>
</div> -->
<el-form-item
label="仲裁员:"
prop="Arbitor"
:rules="[
{
required: true,
message: '仲裁员不能为空',
},
]"
>
<el-select
placeholder="请选择仲裁员"
@change="changeArbitor"
v-model="formateCourtform.Arbitor"
clearable
>
<el-option
v-for="item in dataList"
:key="item.value"
:label="item.nickNameAndNum"
:value="item.userId"
></el-option>
</el-select>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm" class="endbutton"
><span>确 定</span></el-button
>
<el-button @click="cancel" class="endbutton1"
><span>取 消</span></el-button
>
</div>
</el-dialog>
</div>
</template>
<script>
import { arbitrAtor} from "@/api/formationCourt/formationCourt";
import {pendTralCheckBatch} from '@/api/batchManagement/batchManagement.js'
export default {
props: ["caseVisableReview", "formateCourtData", "queryParams"],
data() {
return {
dataList: [],
formateCourtform: {},
arbitrators: [],
isAgreePendTral: 1,
paramsdata: {},
noArbitrator: false,
Arbitor: "",
};
},
created() {
// this.getarbitrAtor();
},
watch: {
caseVisableReview(val){
this.Arbitor = ""
if(val){
this.isAgreePendTral = 1;
this.getarbitrAtor({caseId:this.formateCourtData.id});
}
},
// formateCourtData: {
// handler(val) {
// console.log(val)
// if (val.arbitratorName == null) {
// this.noArbitrator = true;
// } else {
// this.noArbitrator = false;
// }
// },
// },
},
methods: {
// 获取仲裁员信息
getarbitrAtor(val) {
arbitrAtor(val).then((res) => {
this.dataList = res.rows;
// console.log(this.dataList, "this.dataList");
});
},
changeArbitor(val) {
this.arbitrators = [];
this.dataList.forEach((item) => {
if (item.userId == val) {
this.arbitrators.push({
id: item.userId,
arbitratorName: item.nickName,
});
}
});
console.log(this.arbitratorss)
},
// 确认
submitForm() {
// if (this.noArbitrator) {
// this.paramsdata = {
// id: this.formateCourtData.id,
// arbitrators: this.arbitrators,
// };
// } else {
// if (this.isAgreePendTral == 0) {
// this.paramsdata = {
// isAgreePendTral: 0,
// id: this.formateCourtData.id,
// arbitrators: this.arbitrators,
// };
// } else {
// this.paramsdata = {
// isAgreePendTral: 1,
// id: this.formateCourtData.id,
// };
// }
// }
if (this.isAgreePendTral == 0) {
this.paramsdata = {
isAgreePendTral: 0,
batchNumber: this.formateCourtData.batchNumber,
arbitrators: this.arbitrators,
};
} else {
this.paramsdata = {
isAgreePendTral: 1,
batchNumber: this.formateCourtData.batchNumber,
arbitrators: this.arbitrators,
};
}
this.$refs["formateCourtform"].validate((valid) => {
if (valid) {
pendTralCheckBatch(this.paramsdata).then((res) => {
console.log(res)
this.cancel();
this.$modal.msgSuccess("组庭成功");
this.$emit("getList", this.queryParams);
// 初始化页面
this.formateCourtform={}
});
}
});
},
// 取消
cancel() {
this.$emit("cancelCaseReview");
this.arbitrators = [];
},
radioValue(val){
if(val==1){
this.formateCourtform={}
}else if(val==0){
this.formateCourtform={}
}
}
},
};
</script>
<style lang="scss" scoped>
::v-deep .el-dialog {
background: #ffffff;
border-radius: 20px;
}
.endbutton {
width: 124px;
height: 37px;
background: #0072ff;
border-radius: 19px;
span {
width: 32px;
height: 15px;
font-size: 16px;
font-family: Microsoft YaHei;
font-weight: 400;
color: #ffffff;
}
}
.endbutton1 {
width: 124px;
height: 37px;
background: #ffffff;
border: 1px solid #d0d0d0;
border-radius: 19px;
span {
width: 31px;
height: 13px;
font-size: 16px;
font-family: Microsoft YaHei;
font-weight: 400;
color: #959595;
}
}
.infoIcon {
width: 4px;
// height: 17px;
background-color: #0072ff;
margin-right: 5px;
}
.nowarbitrator {
margin-left: 4%;
}
</style>
@@ -0,0 +1,94 @@
<template>
<div>
<!-- 部门长批量审核 -->
<el-dialog title="部门长批量审核" :visible="caseVisablearHead" destroy-on-close width="30%" @close="cancel" center>
<div>
<el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="100px">
<el-form-item label="审核意见" prop="checkOpinion">
<el-input type="textarea" :rows="2" placeholder="请输入审核意见" v-model="ruleForm.checkOpinion"></el-input>
</el-form-item>
<el-form-item label="驳回原因">
<el-input type="textarea" :rows="2" placeholder="请输入驳回原因" v-model="ruleForm.arbitrateReject"></el-input>
</el-form-item>
</el-form>
</div>
<div slot="footer" class="dialog-footer">
<el-button type="primary" class="endbutton" @click="submitForm(1)"><span>同 意</span></el-button>
<el-button type="danger" class="endbutton" @click="submitForm(2)"><span>驳 回</span></el-button>
<el-button class="endbutton" @click="cancel"><span>取 消</span></el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import {checkArbitrateRecordBatchs} from '@/api/batchManagement/batchManagement.js'
export default {
props: ["caseVisablearHead","queryParams","departmentDoc"],
data() {
return {
ruleForm: {},
rules: {
checkOpinion: [
{
required: true,
message: "审核意见不能为空",
trigger: "blur",
},
],
}
};
},
watch: {
caseVisablearHead(val) {
if (val) {
// this.ruleForm = {};
}
}
},
created() {
},
methods: {
submitForm(val){
this.$refs["ruleForm"].validate((valid) => {
if(valid){
if(val==1){
let values = {
batchNumber:this.departmentDoc.batchNumber,
agreeOrNotCheck:1,
arbitrateRecord:this.ruleForm
}
checkArbitrateRecordBatchs(values).then(res=>{
this.$modal.msgSuccess("确认成功");
this.cancel();
this.$emit("getList", this.queryParams);
}).catch((err) => {});
}else if(val==2){
let values = {
batchNumber:this.departmentDoc.batchNumber,
agreeOrNotCheck:2,
arbitrateRecord:this.ruleForm
}
checkArbitrateRecordBatchs(values).then(res=>{
this.$modal.msgSuccess("驳回成功");
this.cancel();
this.$emit("getList", this.queryParams);
}).catch((err) => {});
}
}
})
},
cancel() {
this.$emit("cancelCaseHead");
},
},
}
</script>
<style lang="scss" scoped>
::v-deep .el-dialog {
background: #ffffff;
border-radius: 20px;
}
</style>
@@ -0,0 +1,116 @@
<template>
<div>
<!-- 批量立案审查 -->
<el-dialog title="批量立案审查" :visible="caseVisableReviewF" width="500px" @close="cancel" :destroy-on-close="true">
<div class="radiobox">
<el-radio-group v-model="radio" style="margin-bottom: 20px;">
<el-radio :label="1">同意</el-radio>
<el-radio :label="2">拒绝</el-radio>
</el-radio-group>
<el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="100px">
<!-- TODO -->
<el-form-item label="拒绝原因" prop="caseCheckReject" v-if="radio == 2">
<el-input type="textarea" :rows="2" placeholder="请输入拒绝原因" v-model="ruleForm.caseCheckReject"></el-input>
</el-form-item>
</el-form>
</div>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm" class="endbutton"><span>提 交</span></el-button>
<el-button @click="cancel" class="endbutton1"><span> 取 消</span></el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import {submitCaseApplicationCheckBatch} from '@/api/batchManagement/batchManagement.js'
export default {
name: "filingReview",
props: ["caseVisableReviewF", "filingreviewdata", "filingFeviewbatchNumber","queryParams"],
data() {
return {
radio: 1,
ruleForm: {},
rules: {
caseCheckReject: [
{
required: true,
message: "拒绝原因不能为空",
trigger: "blur",
},
],
}
};
},
methods: {
submitForm() {
this.$refs["ruleForm"].validate((valid) => {
if (valid) {
let batchNumber = this.filingFeviewbatchNumber
let paramsdata = {
agreeOrNotCheck: this.radio,
batchNumber:batchNumber.toString(),
caseCheckReject:this.ruleForm.caseCheckReject
};
submitCaseApplicationCheckBatch(paramsdata)
.then((res) => {
this.$modal.msgSuccess("提交成功");
this.cancel();
this.$emit("getList", this.queryParams);
})
.catch((err) => { });
}
});
},
cancel() {
this.$emit("cancelCaseReviewF");
},
},
};
</script>
<style lang="scss" scoped>
.radiobox {
margin-left: 5%;
}
::v-deep .el-dialog {
width: 800px;
background: #ffffff;
border-radius: 20px;
}
.endbutton {
width: 124px;
height: 37px;
background: #0072ff;
border-radius: 19px;
span {
width: 32px;
height: 15px;
font-size: 16px;
font-family: Microsoft YaHei;
font-weight: 400;
color: #ffffff;
// line-height: 48px;
}
}
.endbutton1 {
width: 124px;
height: 37px;
background: #ffffff;
border: 1px solid #d0d0d0;
border-radius: 19px;
span {
width: 31px;
height: 13px;
font-size: 16px;
font-family: Microsoft YaHei;
font-weight: 400;
color: #959595;
}
}
</style>
@@ -0,0 +1,56 @@
<template>
<div>
<!-- 批量缴费确认 -->
<el-dialog title="批量缴费确认" :visible="caseVisablePayment" destroy-on-close @close="cancel" width="600px" center>
<el-descriptions>
<el-descriptions-item label="案件总金额">{{totalFeeConfir.totalFee}}</el-descriptions-item>
<el-descriptions-item label="申请人">{{confirmPaymen.name}}</el-descriptions-item>
</el-descriptions>
<div slot="footer" class="dialog-footer">
<el-button type="primary" class="endbutton" @click="confirmPayment"><span>缴费确认</span></el-button>
<el-button class="endbutton" @click="cancel"><span>取 消</span></el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import {confirmBatch} from '@/api/batchManagement/batchManagement.js'
export default {
props: ["caseVisablePayment","queryParams","confirmPaymen","totalFeeConfir"],
dicts: ["manager_type"],
data() {
return {
};
},
watch: {
caseVisablePayment(val) {
if (val) {
this.ruleForm = {};
}
}
},
created() {
},
methods: {
confirmPayment(){
confirmBatch({batchNumber:this.confirmPaymen.batchNumber}).then(res=>{
this.$modal.msgSuccess("缴费确认成功");
this.cancel()
this.$emit("getList", this.queryParams);
})
},
cancel() {
this.$emit("cancelCasePayment");
},
},
}
</script>
<style lang="scss" scoped>
::v-deep .el-dialog {
background: #ffffff;
border-radius: 20px;
}
</style>
@@ -0,0 +1,79 @@
<template>
<div>
<!-- 批量选择仲裁方式页面 -->
<el-dialog
title="批量审核仲裁方式"
:visible="caseVisableReviewl"
width="500px"
@close="cancel"
:destroy-on-close="true"
>
<div>
<el-form :model="form" :rules="rules" ref="form">
<el-form-item label="选择开庭方式:" prop="arbitratMethod">
<el-radio-group v-model="form.arbitratMethod">
<el-radio :label=2>书面审理</el-radio>
<el-radio :label=1>开庭审理</el-radio>
</el-radio-group>
</el-form-item>
</el-form>
</div>
<div slot="footer" class="dialog-footer">
<el-button type="primary" class="endbutton" @click="determine">确定</el-button>
<el-button @click="cancel" class="endbutton">取消</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { arbitrateMethod } from "@/api/caseManagement/caseManagement.js";
import {methodBatch} from '@/api/batchManagement/batchManagement.js'
export default {
name: "showchoosetrialmethodDialog",
props: ["caseVisableReviewl", "reviewMethod", "queryParams"],
data() {
return {
form:{},
rules:{
arbitratMethod: [
{ required: true, message: '请选择开庭方式', trigger: 'change' }
]
}
};
},
methods: {
// 审核仲裁方式 arbitrateMethod
determine(val){
this.$refs["form"].validate((valid) => {
if (valid) {
let dates = {
batchNumber: this.reviewMethod.batchNumber,
arbitratMethod:this.form.arbitratMethod
};
console.log(dates)
methodBatch(dates).then((res) => {
this.$modal.msgSuccess("提交成功");
this.cancel();
this.$emit("getList", this.queryParams);
})
.catch((err) => {});
} else {
return false;
}
});
},
cancel() {
this.form.arbitratMethod=""
this.$emit("cancelCaseReviewl");
},
},
};
</script>
<style lang="scss" scoped>
::v-deep .el-dialog {
background: #ffffff;
border-radius: 20px;
}
</style>
@@ -0,0 +1,71 @@
<template>
<div>
<!--查看案件列表 -->
<el-dialog title="查看案件列表" :visible="caseVisableViewing" destroy-on-close @close="cancel" width="70%" center>
<el-table style="width: 100%">
<el-table-column label="序号" type="index" align="center">
<template slot-scope="scope">
<!-- <span>{{
(queryParams.pageNum - 1) * queryParams.pageSize + scope.$index + 1
}}</span> -->
</template>
</el-table-column>
<el-table-column label="案件编号" align="center" :show-overflow-tooltip="true" />
<el-table-column label="申请人" align="center" :show-overflow-tooltip="true" />
<el-table-column label="案件标的" align="center" :show-overflow-tooltip="true" />
<el-table-column label="仲裁方式" align="center" :show-overflow-tooltip="true" />
<el-table-column label="仲裁员" align="center" :show-overflow-tooltip="true" />
<el-table-column label="开庭时间" align="center" :show-overflow-tooltip="true" />
<el-table-column label="案件状态" align="center" >
<template slot-scope="scope">
<!-- <el-tag type="success">{{ scope.row.prefixstr }}</el-tag> -->
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button size="mini" type="text" icon="el-icon-view">跳转案件列表</el-button>
</template>
</el-table-column>
</el-table>
<pagination :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
@pagination="getList(queryParams)"
<div slot="footer" class="dialog-footer">
<!-- <el-button type="primary" class="endbutton"><span>确认</span></el-button> -->
<el-button class="endbutton" @click="cancel"><span>取 消</span></el-button>
</div>
</el-dialog>
</div>
</template>
<script>
export default {
props: ["caseVisableViewing","queryParams"],
dicts: ["manager_type"],
data() {
return {
};
},
watch: {
caseVisableViewing(val) {
if (val) {
this.ruleForm = {};
}
}
},
created() {
},
methods: {
cancel() {
this.$emit("cancelCaseViewing");
},
},
}
</script>
<style lang="scss" scoped>
::v-deep .el-dialog {
background: #ffffff;
border-radius: 20px;
}
</style>
+10 -4
View File
@@ -34,9 +34,6 @@
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<!-- <el-row>
<el-button size="mini">案件归档</el-button>
</el-row> -->
<el-table v-loading="loading" :data="dataList" style="width: 100%">
<el-table-column label="序号" type="index" align="center">
<template slot-scope="scope">
@@ -59,6 +56,7 @@
v-if="scope.row.filearbitraUrl && scope.row.filearbitraUrl !== ''"
@click="showModel(scope.row)">查看裁决书</el-button>
<el-button size="mini" type="text" icon="el-icon-reading" @click="showDetail(scope.row)">归档详情</el-button>
<el-button type="text" size="mini" v-if="checkPermi(['caseFiling:list:downZip'])" icon="el-icon-download" @click="downloadZips(scope.row)">下载案件压缩包</el-button>
</template>
</el-table-column>
</el-table>
@@ -74,7 +72,7 @@
<script>
import { caseApplicationList, selectSignSealUrl,caseApplicationDetail } from "@/api/awardManagement/awardManagement";
import { caseLogRecordList, logistics } from "@/api/caseManagement/caseManagement";
import { adjudicationArchives, videoList } from "@/api/caseFiling/caseFiling";
import { adjudicationArchives, videoList,downloadCaseZipFile} from "@/api/caseFiling/caseFiling";
import archiveDetailsDialog from "./components/archiveDetailsDialog.vue";
export default {
name: "archiveList",
@@ -82,6 +80,7 @@ export default {
components: { archiveDetailsDialog },
data() {
return {
fileURL: window.location.origin + "/API",
queryParams: {
pageNum: 1,
pageSize: 10,
@@ -130,6 +129,13 @@ export default {
this.resetForm("queryForm");
this.handleQuery();
},
// 下在案件归档压缩包
downloadZips(row){
downloadCaseZipFile({ id: row.id }).then(res => {
let url = this.fileURL+res.data.annexPath
window.open(url)
})
},
// 查询列表数据
getList(parms) {
this.loading = true;
@@ -16,7 +16,7 @@
<!-- <el-tab-pane label="快递信息" name="third" v-if="false">
<expressDeliveryInfo :deliveryDataArr="detailform"></expressDeliveryInfo>
</el-tab-pane> -->
<el-tab-pane label="案件视频" name="fourth">
<el-tab-pane label="案件视频" name="fourth" v-if="caseDetail.arbitratMethodName=='开庭审理'?true:false">
<!-- <div @click="getVideo">chakanshipin</div> -->
<el-empty description="暂无视频" v-if="!videoFlag"></el-empty>
<video style="background-color: #181717;width: 400px;height: 200px;margin: 30px;" v-if="videoFlag" :src="headPath + item.annexPath" controls="controls" v-for="(item,index) in videoUrl" :key="index"></video>
@@ -126,6 +126,13 @@
</p>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="仲裁申请书:">
<div v-for="item in caseApplicationObj.caseAttachList" v-if="item.annexType ==1">
<el-link target="_blank" type="primary" :href ="fileURL+item.annexPath">{{item.annexName}}</el-link>
</div>
</el-form-item>
</el-col>
</el-row>
</el-form>
<!-- 申请人主体信息 -->
@@ -512,6 +519,7 @@ export default {
props: ["caseApplicationObj"],
data() {
return {
fileURL: window.location.origin + "/API",
formData: {},
applicateArr: [],
quiltArr: [],
@@ -561,6 +569,7 @@ export default {
if (this.caseApplicationObj) {
this.formData = this.caseApplicationObj;
}
console.log(this.caseApplicationObj)
console.log("this.formData", this.formData);
if (this.caseApplicationObj && this.caseApplicationObj.caseAffiliates) {
this.caseApplicationObj.caseAffiliates.forEach((item) => {
+371 -46
View File
@@ -1,32 +1,35 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="98px">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="68px">
<el-form-item label="案件编号" prop="caseNum">
<el-input v-model="queryParams.caseNum" placeholder="请输入案件编号" clearable @keyup.enter.native="handleQuery" />
<el-input style="width:180px" v-model="queryParams.caseNum" placeholder="请输入案件编号" clearable @keyup.enter.native="handleQuery" />
</el-form-item>
<el-form-item label="申请人(机构)" prop="applicantName">
<el-form-item label="案件批号" prop="caseNum">
<el-input style="width:180px" @input="handleInput" v-model="queryParams.batchNumber" placeholder="请输入案件批号" clearable @keyup.enter.native="handleQuery" />
</el-form-item>
<!-- <el-form-item label="申请人" prop="applicantName"> -->
<!-- <el-input
v-model="queryParams.applicantName"
placeholder="请输入机构名称"
clearable
@keyup.enter.native="handleQuery"
/> -->
<el-cascader v-model="queryParams.nameId" :options="options" @change="changeDept" :props="{ checkStrictly: true }"
<!-- <el-cascader v-model="queryParams.nameId" :options="options" @change="changeDept" :props="{ checkStrictly: true }"
clearable></el-cascader>
</el-form-item>
</el-form-item> -->
<el-form-item label="案件状态" prop="caseStatus">
<el-select :disabled="caseStatusType" v-model="queryParams.caseStatus" placeholder="请选择案件状态" clearable
@keyup.enter.native="handleQuery">
<el-option v-for="dict in caseStatus" :key="dict.dictSort" :label="dict.dictLabel"
:value="dict.dictSort"></el-option>
<el-option v-for="dict in caseStatus" :key="dict.dictValue" :label="dict.dictLabel"
:value="dict.dictValue"></el-option>
</el-select>
</el-form-item>
<el-form-item label="是否完成" prop="selectCaseStatus">
<!-- <el-form-item label="是否完成" prop="selectCaseStatus">
<el-select v-model="queryParams.selectCaseStatus" placeholder="请选择状态" clearable @keyup.enter.native="handleQuery">
<el-option v-for="dict in selectCaseStatusList" :key="dict.value" :label="dict.label"
:value="dict.value"></el-option>
</el-select>
</el-form-item>
</el-form-item> -->
<!-- <el-form-item label="开庭日期" prop="hearDate">
<el-date-picker
v-model="queryParams.hearDate"
@@ -48,20 +51,34 @@
v-hasPermi="['caseManagement:list:add']">案件录入</el-button>
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="compressedPackages"
v-hasPermi="['caseManagement:list:zip']"
>案件压缩包导入</el-button>
>导入压缩包</el-button>
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="batchApplication"
v-hasPermi="['caseManagement:list:import']">案件批量导入</el-button>
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="operateClick(0)"
v-hasPermi="['caseManagement:list:Batchsubmit']">案件批量提交</el-button>
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="operateClick(1)"
v-hasPermi="['caseManagement:list:delete']">案件批量删除</el-button>
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="operateClick(2)"
v-hasPermi="['caseManagement:list:check']">案件批量立案审查</el-button>
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="operateClick(4)"
v-hasPermi="['caseManagement:list:Batchgeneration']">批量生成裁决书</el-button>
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="operateClick(6)"
v-hasPermi="['caseManagement:list:pay']">批量缴费</el-button>
<!-- <el-button type="primary" plain icon="el-icon-plus" size="mini"
@click="batchConfirmation"
v-hasPermi="['caseManagement:list:batchConfirma']"
>
批量缴费确认
</el-button> -->
</el-col>
<!-- <el-col :span="24" style="margin-top:10px;">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="batchSignatures"
v-hasPermi="['caseManagement:list:signature']"
>
批量签名
</el-button>
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="batchPrintings"
v-hasPermi="['caseManagement:list:officialSeal']"
>
批量用印
</el-button>
</el-col> -->
</el-row>
<el-table v-loading="loading" :data="dataList" style="width: 100%" :row-class-name="tableRowClassName" class="pendingTrial">
<el-table-column type="selection">
@@ -74,14 +91,15 @@
</template>
</el-table-column>
<el-table-column label="案件编号" align="center" prop="caseNum" :show-overflow-tooltip="true" />
<el-table-column label="申请人(机构)" align="center" prop="applicantName" :show-overflow-tooltip="true" />
<el-table-column label="案件批号" align="center" prop="batchNumber" :show-overflow-tooltip="true" />
<el-table-column label="申请人" align="center" prop="applicantName" :show-overflow-tooltip="true" />
<el-table-column label="案件标的" align="center" prop="caseSubjectAmount" />
<el-table-column label="仲裁方式" align="center" prop="arbitratMethodName" :show-overflow-tooltip="true" />
<!-- 仲裁员 -->
<el-table-column label="仲裁员" align="center" prop="arbitratorName" />
<!-- 开庭日期 -->
<el-table-column label="开庭日期" align="center" prop="hearDate" :show-overflow-tooltip="true" />
<el-table-column label="案件状态" align="center" prop="caseStatusName">
<el-table-column label="案件状态" align="center" prop="caseStatusName" :show-overflow-tooltip="true">
<template slot-scope="scope">
<el-tag type="success">{{ scope.row.caseStatusName }}</el-tag>
</template>
@@ -99,19 +117,21 @@
<el-button size="mini" type="text" icon="el-icon-edit" @click="undoRow(scope.row,1)" v-if="(scope.row.updateSubmitStatus == 1 || scope.row.updateSubmitStatus == 3) && scope.row.caseStatus > 0 && checkPermi(['caseManagement:list:undo'])">撤销修改</el-button>
<el-button size="mini" type="text" icon="el-icon-check" @click="onsubmitRow(scope.row)" v-if="scope.row.caseStatus == 0 &&
checkPermi(['caseManagement:list:submit']) && btnStatus
">提交</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="deleteRow(scope.row)" v-if="scope.row.caseStatus == 0 &&
">提交案件</el-button>
<!-- <el-button size="mini" type="text" icon="el-icon-delete" @click="deleteRow(scope.row)" v-if="scope.row.caseStatus == 0 &&
checkPermi(['caseManagement:list:delete']) && btnStatus
">删除</el-button>
">删除</el-button> -->
<el-button size="mini" type="text" icon="el-icon-view" @click="filingreviewRow(scope.row)" v-if="scope.row.caseStatus == 1 &&
checkPermi(['caseManagement:list:check']) && btnStatus
">立案审查</el-button>
">审查案件</el-button>
<!-- <el-button size="mini" type="text" icon="el-icon-tickets" @click="payStatus(scope.row)"
v-if="scope.row.caseStatus == 2" v-hasPermi="['caseManagement:list:pay']">缴费</el-button> -->
<el-button size="mini" type="text" icon="el-icon-tickets" @click="payStatus(scope.row)" v-if="scope.row.caseStatus == 2 &&
checkPermi(['caseManagement:list:pay']) && btnStatus
">缴费</el-button>
<el-button size="mini" type="text" icon="el-icon-zoom-in" @click="paymentconfirmationRow(scope.row)" v-if="checkPermi(['caseManagement:list:payconfirm']) && btnStatus&&scope.row.caseStatus==3">确认缴费</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" @click="viewpaymentformRow(scope.row)" v-if="checkPermi(['caseManagement:list:detail'])&&scope.row.caseStatus>2">查看缴费单</el-button>
<el-button size="mini" type="text" icon="el-icon-tickets" @click="evidenceListS(scope.row)" >证据清单</el-button>
<!-- <el-button
size="mini"
type="text"
@@ -126,7 +146,7 @@
<el-button size="mini" type="text" icon="el-icon-s-check" @click="reviewRevocation(scope.row)" v-if="scope.row.updateSubmitStatus == 2 && checkPermi(['caseManagement:list:reviewRevocation'])">审核撤销</el-button>
<el-button size="mini" type="text" icon="el-icon-s-check" @click="courtconfirmationRow(scope.row)" v-if="scope.row.caseStatus == 6 &&
checkPermi(['caseManagement:list:confirmgroup']) && btnStatus
">组庭确认</el-button>
">确认组庭</el-button>
<el-button size="mini" type="text" icon="el-icon-check" @click="courtreviewRow(scope.row)" v-if="scope.row.caseStatus == 5 &&
checkPermi(['caseManagement:list:checkgroup']) && btnStatus
">组庭审核</el-button>
@@ -147,15 +167,43 @@
@click="evidenceUpload(scope.row)">证据修改</el-button> -->
<el-button size="mini" type="text" icon="el-icon-edit" v-if="(scope.row.caseStatus < 10 && scope.row.caseStatus != 2 && scope.row.caseStatus != 0) &&
checkPermi(['caseManagement:list:evidenceUpdate']) && btnStatus"
@click="evidenceUpload(scope.row)">证据修改</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" v-if="scope.row.caseStatus == 31 && btnStatus"
@click="timeUpdata(scope.row)">开庭时间</el-button>
@click="evidenceUpload(scope.row)">修改证据</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" v-if="scope.row.caseStatus == 31 && btnStatus && checkPermi(['caseManagement:list:timer'])"
@click="timeUpdata(scope.row)">设定开庭时间</el-button>
<el-button size="mini" type="text" icon="el-icon-lock"
v-if="checkPermi(['caseManagement:list:lock']) && scope.row.lockStatus == 0 && btnStatus"
@click="lockClick(scope.row)">锁定</el-button>
@click="lockClick(scope.row)">锁定案件</el-button>
<el-button size="mini" type="text" icon="el-icon-unlock"
v-if="checkPermi(['caseManagement:list:lock']) && scope.row.lockStatus == 1 && btnStatus"
@click="ulockClick(scope.row)">解锁</el-button>
<el-button size="mini" type="text" icon="el-icon-reading"
v-if="scope.row.filearbitraUrl && scope.row.filearbitraUrl !== ''"
@click="showModel(scope.row, 0)">查看裁决书</el-button>
<el-button size="mini" type="text" icon="el-icon-edit"
v-if="scope.row.caseStatus == 11 && checkPermi(['caseManagement:list:secretarycheck'])"
@click="showModel(scope.row, 1)">核验裁决书</el-button>
<el-button size="mini" type="text" icon="el-icon-edit"
v-if="scope.row.caseStatus == 18 && checkPermi(['caseManagement:list:arbitratorcheck']) && btnStatus"
@click="showModel(scope.row, 4)">审核裁决书</el-button>
<el-button size="mini" type="text" icon="el-icon-edit"
v-if="scope.row.caseStatus == 12 && checkPermi(['caseManagement:list:confirmaward']) && btnStatus"
@click="showModel(scope.row, 2)">审核裁决书</el-button>
<el-button size="mini" type="text" icon="el-icon-edit"
v-if="scope.row.caseStatus == 13 && checkPermi(['caseManagement:list:sign']) && btnStatus"
@click="showModel(scope.row, 3)">签名</el-button>
<el-button size="mini" type="text" icon="el-icon-edit"
v-if="scope.row.caseStatus == 14 && checkPermi(['caseManagement:list:signprint']) && btnStatus"
@click="showaffixModel(scope.row, 4)">用印</el-button>
<!-- <el-button size="mini" type="text" icon="el-icon-truck"
v-if="scope.row.caseStatus > 15 && checkPermi(['caseManagement:list:delivery'])"
@click="showDeliveryModel(scope.row, 4)">快递信息</el-button> -->
<el-button size="mini" type="text" icon="el-icon-edit"
v-if="scope.row.caseStatus == 15 && checkPermi(['caseManagement:list:sendaward']) && btnStatus"
@click="showMailaward(scope.row)">送达裁决书</el-button>
<el-button size="mini" type="text" icon="el-icon-edit"
v-if="scope.row.caseStatus == 16 && checkPermi(['caseManagement:list:archive']) && btnStatus"
@click="showCasefilingModel(scope.row, 6)">案件归档</el-button>
<!-- <el-button size="mini" type="text" icon="el-icon-tickets" @click="detailsAwardList(scope.row)">案件详情</el-button> -->
<!-- 暂时隐藏后期可能会放其他地方 -->
<!-- <el-button v-if="checkPermi(['caseManagement:list:listEvidence']) && scope.row.caseStatus <= 1 && btnStatus"
size="mini" type="text" icon="el-icon-upload" @click="uploadCase(scope.row)">上传证据目录</el-button> -->
@@ -177,9 +225,9 @@
@pagination="getcaseApply(queryParams)" />
<!-- 立案申请弹框 -->
<caseentryDialog :visible="visible" @cancel="cancel" :form="form" :queryParams="queryParams"
<caseentryDialog :visible="visible" @cancel="cancel" :form="form" :detailsAwardForm="detailsAwardForm" :queryParams="queryParams"
:dialogtitle="dialogtitle" :getcaseApply="getcaseApply" :flag="flag" :caseAttachList="caseAttachList"
:initpaymentArr="initpaymentArr" :initpaymentArr1="initpaymentArr1"></caseentryDialog>
:initpaymentArr="initpaymentArr" :initpaymentArr1="initpaymentArr1" :columnValues="columnValues"></caseentryDialog>
<!-- 批量申请弹框 openbatch-->
<batchDialog :openbatch="openbatch" :queryParams="queryParams" @cancelBatch="cancelBatch"
:getcaseApply="getcaseApply"></batchDialog>
@@ -208,6 +256,9 @@
<!-- 缴费 -->
<payDialog :openPay="openPay" :payTitle="payTitle" :form="form" :payForm="payForm" :queryParams="queryParams"
@getcaseApply="getcaseApply" @paycancelRow="paycancelRow" :payId="payId"></payDialog>
<!-- 缴费确认数据详情 -->
<paymentdetailsDialog :openDialog="openDialog" :detailform="detailform" :title="title" :flag="flag" :queryParams="queryParams"
@getcaseApply="getcaseApply" @cancelpaymentdetails="cancelpaymentdetails"></paymentdetailsDialog>
<!-- 案件日志 -->
<caselogDialog :showcaseLog="showcaseLog" @cancelcaseLog="cancelcaseLog" :flagLoading="flagLoading"
:caselogDataArr="caselogDataArr"></caselogDialog>
@@ -232,12 +283,31 @@
</uploadCaseDialog>
<!-- 秘书审核修改页面 -->
<caseentryExamineDialog :dialogtitle="dialogtitle" :caseentryExamineVisible="caseentryExamineVisible" :queryParams="queryParams"
:getcaseApply="getcaseApply"
@getcaseApply="getcaseApply"
@caseentryExamineCancel="caseentryExamineCancel" :caseentryExamineData="caseentryExamineData" :caseentryExamineDataAll="caseentryExamineDataAll"></caseentryExamineDialog>
<caseCompressionPackage :openCompressedPackages="openCompressedPackages" :queryParams="queryParams" @cancelCompreess="cancelCompreess"
:getcaseApply="getcaseApply">
@getcaseApply="getcaseApply">
</caseCompressionPackage>
<!-- 证据清单 -->
<evidenceList :evidenceListD ="evidenceListD" @cancelevidenceList="cancelevidenceList" :caseAttachListR ="caseAttachListR"></evidenceList>
<!-- 批量缴费确认 -->
<batchConfirmationPaymen @batchOperate="batchOperate" :batchVisable="batchVisable"></batchConfirmationPaymen>
<!-- 批量签名 -->
<batchSignature :signatureVisable="signatureVisable" @signatureOperate="signatureOperate"></batchSignature>
<!-- 批量用印 -->
<batchPrinting :printingVisable="printingVisable" @printingOperate="printingOperate"></batchPrinting>
<!-- 裁决书弹窗 -->
<judgmentInformation :openDialogInfor="openDialogInfor" :awardDetailform="awardDetailform" :title="title" :flag="flag" @getcaseApply="getcaseApply" :queryParams="queryParams"
@cancelpaymentdetailsCom="cancelpaymentdetailsCom"></judgmentInformation>
<!-- 快递信息页面 -->
<expressDeliveryDialog :showDelivery="showDelivery" :deliveryDataArr="deliveryDataArr"
@closeDeliveryModel="closeDeliveryModel" :flagLoading="flagLoading"></expressDeliveryDialog>
<!-- 送达裁决书页面 -->
<mailawardDialog :openMailawardDialog="openMailawardDialog" @closeMailaward="closeMailaward" :mailawardata="mailawardata" :emailobj="emailobj" @getcaseApply="getcaseApply" :queryParams="queryParams"></mailawardDialog>
<!-- 裁决书案件详情 -->
<!-- <detailsAward :showarchiveDetails="showarchiveDetails" @cancelDetail="cancelDetail" :detailsAwardNum="detailsAwardNum" :videoList="videoList"
:flagLoadingS="flagLoadingS" :trialTranscripts="trialTranscripts"
></detailsAward> -->
</div>
</template>
@@ -257,16 +327,30 @@ import evidenceDialog from './components/evidenceDialog.vue';
import timeDialog from './components/timeDialog.vue';
import operateDialog from './components/operateDialog.vue';
import uploadCaseDialog from './components/uploadCaseDialog.vue';
import caseCompressionPackage from './components/caseCompressionPackage.vue'
import caseCompressionPackage from './components/caseCompressionPackage.vue';
import evidenceList from './components/evidenceList.vue'
import batchConfirmationPaymen from './components/batchConfirmationPaymen.vue'
import batchSignature from './components/batchSignature.vue'
import batchPrinting from './components/batchPrinting.vue'
import paymentdetailsDialog from "./components/paymentdetailsDialog.vue";
// 秘书审核页面
import caseentryExamineDialog from './components/caseentryExamine.vue';
import { caseApplicationDetail } from "@/api/pay/pay";
//裁决书弹框页面
import judgmentInformation from './components/judgmentInformation.vue';
//快递弹窗
import expressDeliveryDialog from './components/expressDeliveryDialog.vue';
//裁决书弹窗
import mailawardDialog from './components/mailawardDialog.vue';
//归档详情弹窗
import detailsAward from './components/detailsAward.vue';
import { caseApplicationDetail,selectCaseApplicationConfirm } from "@/api/pay/pay";
import { videoList } from "@/api/caseFiling/caseFiling";
import {
caseApply,
removeCaseApply,
submitCaseApply,
selectCaseApply,
updateCaseLockStatus
updateCaseLockStatus,
} from "@/api/caseAccess/caseEntry";
import { listDept } from "@/api/system/dept";
import {
@@ -274,8 +358,10 @@ import {
caseLogRecordList,
revoke,
selectCompareCase,
updateAudit
updateAudit,
attachListByCaseId
} from "@/api/caseManagement/caseManagement";
import {selectSignSealUrl,selectSignUrl,selectSealUrl,adjudicationLogistics,emailByCaseId,adjudicationCaseFile,} from "@/api/awardManagement/awardManagement";
import { getDicts } from '@/api/system/dict/data.js';
export default {
name: "caseList",
@@ -297,10 +383,22 @@ export default {
operateDialog,
uploadCaseDialog,
caseentryExamineDialog,
caseCompressionPackage
caseCompressionPackage,
evidenceList,
batchConfirmationPaymen,
batchSignature,
batchPrinting,
paymentdetailsDialog,
judgmentInformation,
expressDeliveryDialog,
mailawardDialog,
detailsAward
},
data() {
return {
detailsAwardForm: {},
// 遮罩层
loading: true,
// 总条数
@@ -308,6 +406,10 @@ export default {
isapply: "申请人:",
// 表格数据
dataList: [],
// 抓取数据
columnValues:[],
// 审核修改抓取数据
// afterColumnValues:[],
// 查询参数
queryParams: {
caseNum: undefined,
@@ -315,6 +417,7 @@ export default {
caseStatusList: [0, 1, 2, 5, 6, 7, 8, 9, 10, 31],
// hearDate: "",
caseStatus: null,
batchNumber:null,
applicantName: "",
nameId: "",
pageNum: 1,
@@ -349,15 +452,37 @@ export default {
payForm: {},
caseAttachList: [], //案件质证资料
showcaseLog: false, //案件日志弹框显示
evidenceListD:false,//证据清单弹框显示
caseAttachListR:[], //证据清单
flagLoading: true, //案件日志弹框loading
caselogDataArr: [],
options: [], //机构数据
detailform:{},//缴费详情
awardDetailform:{},//裁决书详情
openDialog: false, //缴费详情数据弹框
openDialogInfor:false,//裁决书弹框
showDelivery:false,//快递弹窗
flagLoading: true,
deliveryDataArr: [],//快递信息数据
openMailawardDialog: false, //送达裁决书页面
mailawardata: {}, //裁决书送达界面数据
emailobj: {},//邮箱存储
showarchiveDetails:false,//归档详情弹框
videoList:"", //视频数据
flagLoadingS: true,
trialTranscripts:[],//庭审笔录
detailsAwardNum:{},//归档详情数据
flag: null,
title: "",
payId: null,
caseStatus: [],
processData: {},
timeVisable: false,
timeData: {},
operateVisable: false,
batchVisable:false,
signatureVisable:false,//批量签名
printingVisable:false,
operateData: {},
operateTitle: "",
operateStatus: 0,
@@ -387,12 +512,18 @@ export default {
if (params >= 0) {
this.queryParams.caseStatus = params;
}
this.queryParams.batchNumber = this.$route.params.batchNumber;
console.log(this.$route.params.batchNumber)
this.getcaseApply(this.queryParams);
})
// this.getcaseApply(this.queryParams);
this.getInstitution();
},
methods: {
handleInput(event) {
const value = event;
this.queryParams.batchNumber = value.replace(/[^\d]/g, ''); // 去除非数字字符
},
cancel() {
this.visible = false;
},
@@ -409,14 +540,39 @@ export default {
cancelOperate() {
this.operateVisable = false;
},
batchOperate(){
this.batchVisable = false;
},
printingOperate(){
this.printingVisable = false;
},
uploadCaseCancel() {
this.uploadCaseVisable = false;
},
signatureOperate(){
this.signatureVisable = false;
},
// 关闭确认缴费弹窗
cancelpaymentdetails() {
this.openDialog = false;
},
// 上传证据目录弹窗
uploadCase(row) {
this.uploadCaseData = row;
this.uploadCaseVisable = true;
},
// 批量缴费
batchConfirmation(){
this.batchVisable = true;
},
// 批量签名
batchSignatures(){
this.signatureVisable = true;
},
// 批量用印
batchPrintings(){
this.printingVisable = true;
},
// 批量操作弹窗
operateClick(type) {
this.operateVisable = true;
@@ -526,9 +682,10 @@ export default {
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
(this.queryParams.caseStatusList = [0, 1, 2, 5, 6, 7, 8, 9, 10, 31]),
(this.queryParams.caseStatusList = [0, 1, 2, 5, 6, 7, 8, 9, 10, 31]),
(this.queryParams.applicantName = ""),
(this.queryParams.nameId = ""),
(this.queryParams.batchNumber=""),
this.getcaseApply(this.queryParams);
},
// 案件录入
@@ -581,13 +738,18 @@ export default {
this.form = row;
this.visible = true;
this.dialogtitle = "立案详情";
this.getInfo(row);
// this.getInfo(row);
},
// 案件日志
caselogRow(row) {
this.showcaseLog = true;
this.caseLogRecordListFn(row);
},
// 证据清单
evidenceListS(row){
this.evidenceListD = true;
this.getInfo(row);
},
// 查询案件日志信息
caseLogRecordListFn(val) {
this.flagLoading = true;
@@ -607,13 +769,18 @@ export default {
cancelViewProcess() {
this.processVisable = false;
},
// 关闭案件详情
cancelevidenceList(){
this.evidenceListD = false;
},
// 修改
editRow(row) {
this.flag = "1";
this.form = row;
// console.log(this.form)
this.visible = true;
this.dialogtitle = "立案修改";
this.getInfo(row);
// this.getInfo(row);
},
// 列表提交立案
onsubmitRow(row) {
@@ -655,11 +822,32 @@ export default {
res.data.caseStatusName = "待缴费";
}
this.form = res.data;
this.detailform = res.data;
this.awardDetailform = res.data;
this.detailsAwardNum = res.data;
console.log(this.detailsAwardNum)
this.payForm.feePayable = res.data.feePayable;
this.payForm.caseId = res.data.id;
});
},
// 缴费确认
paymentconfirmationRow(row) {
console.log(row)
this.getDetail({ id: row.id,version: row.version });
this.openDialog = true;
this.title = "缴费确认";
this.flag = 0;
this.detailform = {}
},
// 查看缴费单
viewpaymentformRow(row) {
// console.log("查看缴费单", row);
this.getDetail({ id: row.id,version: row.version});
this.openDialog = true;
this.title = "缴费单详情";
this.flag = 1;
this.detailform = {}
},
// 组庭
// formationcourtRow(row) {
// console.log(row, "组庭");
@@ -675,6 +863,7 @@ export default {
this.caseentryExamineVisible = true;
this.dialogtitle = "审核修改详情";
this.getSelectCompareCase(row)
},
// 秘书审核修改页面 caseentryExamineVisible
caseentryExamineCancel() {
@@ -687,8 +876,11 @@ export default {
version:val.version
}
selectCompareCase(param).then((res) => {
// this.afterColumnValues = res.data.afterCase.columnValues
// console.log(this.afterColumnValues+"8888888888")
this.caseentryExamineData = res.data.afterCase
this.caseentryExamineDataAll = res.data
})
},
// 审核撤销
@@ -705,8 +897,10 @@ export default {
},
// 组庭审核
courtreviewRow(row) {
// console.log(row, "组庭审核");
console.log(row, "组庭审核");
this.formateCourtData = row;
console.log(row)
this.showformateCourt = true;
},
cancelcourtReview() {
@@ -716,6 +910,7 @@ export default {
choosetrialmethodRow(row) {
// console.log(row, "审核仲裁方式");
this.choosetrialmethodata = row;
console.log(row)
this.showchoosetrialmethod = true;
},
// 关闭审核仲裁方式
@@ -737,7 +932,7 @@ export default {
console.log(row, "开庭审理");
this.showtrialincourt = true;
this.form = row;
this.getInfo(row);
// this.getInfo(row);
},
canceltrialincourt() {
this.showtrialincourt = false;
@@ -769,6 +964,9 @@ export default {
version: row.version
}
selectCaseApply(params).then((res) => {
this.detailsAwardForm = res.data;
// 证据清单
this.caseAttachListR = res.data.caseAttachList;
// this.visible = true;
// this.formData = res.data;
this.form.caseName = res.data.caseName;
@@ -780,6 +978,7 @@ export default {
arbitratorName: res.data.arbitratorName,
caseAttachList: res.data.caseAttachList,
};
console.log(res)
this.initpaymentArr = [];
this.initpaymentArr1 = [];
res.data.caseAffiliates.forEach((item) => {
@@ -789,10 +988,13 @@ export default {
this.initpaymentArr1.push(item);
}
});
this.columnValues = res.data.columnValues;
this.caseAttachList = res.data.caseAttachList;
console.log(this.caseAttachList,"caseAttachList")
// console.log(this.caseAttachList,"caseAttachList")
this.form.requestRule = res.data.requestRule;
this.form.properPreser = res.data.properPreser;
this.form.facts =res.data.facts;
// this.form.applicantIsWrittenHear = 1
});
},
// 删除
@@ -837,11 +1039,134 @@ export default {
},
// 表格显示高亮
tableRowClassName(row){
if(row.row.arbitratMethodName=="开庭审理"){
console.log(row)
if(row.row.caseStatus==8){
return 'pendingTrial'
}
}
},
// model框显示
showModel(row, type) {
switch (type) {
case 0:
selectSignSealUrl({ id: row.id }).then(res => {
let url = res.data.filearbitraUrl;
window.open(url)
})
break;
case 1:
this.getDetail({ id: row.id,version: row.version });
this.openDialogInfor = true;
this.title = "核验裁决书";
this.flag = 1;
break;
case 2:
this.getDetail({ id: row.id,version: row.version });
this.openDialogInfor = true;
this.title = "审核裁决书";
this.flag = 2;
break;
case 3:
selectSignUrl({ id: row.id }).then(res => {
console.log(res)
let url = res.data.signUrl;
window.open(url)
})
break;
case 4:
this.getDetail({ id: row.id,version: row.version});
this.openDialogInfor = true;
this.title = "审核裁决书";
this.flag = 4;
break;
default:
break;
}
},
// 关闭弹窗
cancelpaymentdetailsCom() {
this.openDialogInfor = false;
},
// 用印申请
showaffixModel(row) {
this.$modal.confirm('是否进行用印申请?')
.then(function () {
selectSealUrl({ id: row.id }).then(res => {
let url = res.data.sealUrl;
window.open(url)
})
}).catch(function () {
});
},
// 快递信息弹框
showDeliveryModel(row) {
console.log(row, '快递');
this.showDelivery = true
this.getadjudicationLogistics({ id: row.id })
},
closeDeliveryModel() {
this.showDelivery = false
},
// 查询物流信息
getadjudicationLogistics(val) {
this.flagLoading = true;
adjudicationLogistics(val).then((res) => {
this.deliveryDataArr = res.data
this.flagLoading = false
})
},
// 送达裁决书弹框
showMailaward(row) {
this.mailawardata = row;
this.emailByCaseIdFn(row.id)
this.openMailawardDialog = true
},
// 关闭送达裁决书弹框
closeMailaward(row) {
this.openMailawardDialog = false
},
// 根据案件id查询邮件
emailByCaseIdFn(val) {
emailByCaseId({ id: val }).then((res) => {
this.emailobj = res.data
})
},
// 案件归档
showCasefilingModel(row) {
this.$modal.confirm('是否确认立即进行案件扫描?').then(
function () {
// return adjudicationCaseFile({ id: row.id })
return adjudicationCaseFile({ ids: [row.id] })
}
).then(() => {
this.getcaseApply(this.queryParams);
this.$modal.msgSuccess("归档成功!");
}).catch(function () { })
},
// 归档详情
detailsAwardList(row){
this.showarchiveDetails = true
this.getDetail({ id: row.id })
this.getvideoList({ caseId: row.id })
this.getAttachListByCaseId({caseAppliId:row.id,annexType:11})
this.flagLoadingS = false
},
// 根据id查询视频列表
getvideoList(data){
videoList(data).then(res => {
this.videoList = res.data;
})
},
//根据案件id和类型查询附件
getAttachListByCaseId(data){
attachListByCaseId(data).then(res =>{
this.trialTranscripts = res.data;
})
},
// 归档详情关闭弹框
cancelDetail(){
this.showarchiveDetails = false;
},
},
};
</script>
@@ -849,6 +1174,6 @@ export default {
<style>
/* // #formContainer {} */
.el-table .pendingTrial {
background:rgb(148, 224, 25);
background:rgb(97, 224, 23);
}
</style>
@@ -34,7 +34,7 @@
<el-input v-model="adjudicatename.respondentName" />
</el-form-item>
</el-col>
<el-col :span="12">
<!-- <el-col :span="12">
<el-form-item label="借款开始日期:" prop="loanStartDate">
<el-date-picker
v-model="formData.loanStartDate"
@@ -53,7 +53,7 @@
>
</el-date-picker>
</el-form-item>
</el-col>
</el-col> -->
<el-col :span="12">
<el-form-item label="案件标的:" prop="caseSubjectAmount">
<el-input
@@ -78,14 +78,14 @@
/>
</el-form-item>
</el-col>
<el-col :span="12">
<!-- <el-col :span="12">
<el-form-item label="申请人主张欠本金:" prop="claimPrinciOwed">
<el-input
v-model="formData.claimPrinciOwed"
placeholder="请输入"
/>
</el-form-item>
</el-col>
</el-col> -->
<!-- <el-col :span="12">
<el-form-item label="案件顾问:" prop="claimPrinciOwed">
<el-input v-model="formData.claimPrinciOwed" placeholder="请输入" />
@@ -108,7 +108,7 @@
</el-form-item>
</el-col>
<el-col :span="12">
<!-- <el-col :span="12">
<el-form-item label="开庭日期:" prop="hearDate">
<el-date-picker
v-model="adjudicatename.hearDate"
@@ -117,14 +117,14 @@
>
</el-date-picker>
</el-form-item>
</el-col>
</el-col> -->
</el-row>
<!-- <el-col :span="24">
<el-form-item label="案件资料:" prop="claimPrinciOwed">
<el-input v-model="formData.claimPrinciOwed" placeholder="请输入" />
</el-form-item>
</el-col> -->
<el-col :span="24">
<!-- <el-col :span="24">
<el-form-item
label="申请人案件证据:"
>
@@ -147,7 +147,7 @@
</a>
</div>
</el-form-item>
</el-col>
</el-col> -->
</el-form>
<el-form ref="form2" :model="form2" label-width="150px">
<el-form-item label="笔录内容:" prop="responCrossOpin">
@@ -260,7 +260,7 @@
</el-col> -->
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm">提交仲裁结果</el-button>
<el-button type="primary" @click="submitForm" :loading="loadingSubmit">提交仲裁结果</el-button>
<el-button @click="cancel">取 消</el-button>
</div>
</el-dialog>
@@ -278,6 +278,7 @@ export default {
form2: {},
applicateArr: [],//申请人案件资料
quiltArr: [],//被申请人案件资料
loadingSubmit: false,
};
},
watch: {
@@ -328,6 +329,7 @@ export default {
submitForm() {
this.$refs["form2"].validate((valid) => {
if (valid) {
this.loadingSubmit = true;
writtenHear({
ids: [this.formData.id],
evidenDetermi: this.form2.evidenDetermi,
@@ -340,8 +342,11 @@ export default {
this.$modal.msgSuccess("提交成功");
this.cancel();
this.$emit("getcaseApply",this.queryParams);
this.loadingSubmit = false;
})
.catch((err) => {});
.catch((err) => {
this.loadingSubmit = false;
});
}
});
},
@@ -0,0 +1,153 @@
<template>
<div>
<!-- 批量确认缴费 -->
<el-dialog title="批量确认缴费" width="65%" :visible="batchVisable" @close="cancel" center :distroy-on-close="true">
<el-table v-loading="loading" style="width: 100%" :data="dataList" @selection-change="handleSelectionChange">
<el-table-column type="selection">
</el-table-column>
<el-table-column label="序号" type="index" align="center">
<template slot-scope="scope">
<span>{{
(queryParamsData.pageNum - 1) * queryParamsData.pageSize + scope.$index + 1
}}</span>
</template>
</el-table-column>
<el-table-column label="案件编号" width="180" prop="caseNum" align="center" :show-overflow-tooltip="true" />
<el-table-column label="申请人" align="center" prop="applicantName" :show-overflow-tooltip="true" />
<el-table-column label="案件标的" align="center" prop="caseSubjectAmount" />
<el-table-column label="仲裁方式" align="center" prop="arbitratMethodName" :show-overflow-tooltip="true" />
<!-- 仲裁员 -->
<el-table-column label="仲裁员" prop="arbitratorName" align="center" />
<!-- 开庭日期 -->
<el-table-column label="开庭日期" prop="hearDate" align="center" :show-overflow-tooltip="true" />
<el-table-column label="案件状态" prop="caseStatusName" align="center">
<template slot-scope="scope">
<el-tag type="success">{{ scope.row.caseStatusName }}</el-tag>
</template>
</el-table-column>
</el-table>
<pagination :total="total" :page.sync="queryParamsData.pageNum"
:limit.sync="queryParamsData.pageSize" @pagination="getBatchComfirmation(queryParamsData)" />
<div slot="footer" class="dialog-footer">
<el-button @click="cancel" class="endbutton"><span>取 消</span></el-button>
<el-button type="primary" class="endbutton" :disabled="dataList.length == 0 || batchData.length == 0" @click="submitPay"><span>确认缴费</span></el-button>
</div>
<el-dialog width="40%" title="缴费详情" :visible.sync="payVisible" append-to-body>
<!-- 案件总金额 -->
<h3>案件总金额:{{ form.totalFee / 100 }}</h3>
<el-descriptions :title="'订单信息' + (index + 1)" v-for="(item, index) in form.caseApplicationList"
:key="index" border>
<el-descriptions-item label="案件编号">{{
item.caseNum
}}</el-descriptions-item>
<el-descriptions-item label="申请人">{{
item.caseAppName
}}</el-descriptions-item>
<el-descriptions-item label="案件标的">{{
item.caseSubjectAmount
}}</el-descriptions-item>
<el-descriptions-item label="案件应缴费用">{{
item.feePayable
}}</el-descriptions-item>
<el-descriptions-item label="被申请人">{{
item.caseResName
}}</el-descriptions-item>
<!-- <el-descriptions-item label="申请人仲裁诉求">{{
item.arbitratClaims
}}</el-descriptions-item> -->
</el-descriptions>
<div slot="footer" class="dialog-footer">
<el-button @click="payCancel" class="endbutton"><span>取 消</span></el-button>
<el-button type="primary" class="endbutton" @click="submitUpload" :loading="loadingSubmit"><span>确认缴费</span></el-button>
</div>
</el-dialog>
</el-dialog>
</div>
</template>
<script>
import {caseApply} from '@/api/caseAccess/caseEntry'
import { getPayDetail,confirmPay} from "@/api/pay/pay";
export default {
props:["batchVisable"],
data() {
return {
// 遮罩层
loading: true,
// 总条数
total:0,
// 查询参数
queryParamsData: {
caseStatus: 3,
pageNum: 1,
pageSize: 10,
},
// 表格数据
dataList: [],
batchData: [],
payVisible: false,
form: {},
submitForm: {
ids:[]
},
loadingSubmit: false,
}
},
watch: {
batchVisable(val) {
if (val) {
this.getBatchComfirmation(this.queryParamsData)
}
}
},
created(){
this.getBatchComfirmation(this.queryParamsData)
},
methods:{
// 查询列表
getBatchComfirmation(val){
this.loading = true;
caseApply(val).then(res=>{
this.dataList = res.rows
this.total = res.total;
this.loading = false;
})
},
// 选择勾选框
handleSelectionChange(val) {
this.batchData = [];
val.forEach(item => {
this.batchData.push(item.id)
})
},
// 批量缴费弹窗
submitPay() {
this.payVisible = true;
this.getPayDetailFn({ caseIds: this.batchData })
},
// 查询缴费信息
getPayDetailFn(params) {
getPayDetail(params).then(res => {
console.log(res)
this.form = res.data;
})
},
payCancel() {
this.payVisible = false;
},
submitUpload() {
this.loadingSubmit = true;
this.submitForm.ids = this.batchData;
console.log(this.submitForm)
confirmPay(this.submitForm).then(res => {
this.$modal.msgSuccess("成功");
this.payCancel();
this.getBatchComfirmation(this.queryParamsData);
this.loadingSubmit = false;
})
},
cancel() {
this.$emit("batchOperate");
},
}
}
</script>
@@ -63,7 +63,7 @@
</template>
<script>
import { importTemplate } from "@/api/caseAccess/caseEntry";
import { pageSignAdjudicate } from "@/api/caseAccess/caseEntry";
import { getToken } from "@/utils/auth";
export default {
props: ["openbatch","getcaseApply","queryParams"],
@@ -0,0 +1,164 @@
<template>
<!-- 批量用印 -->
<div>
<el-dialog title="批量用印" width="60%" :visible="printingVisable" @close="cancel" center :distroy-on-close="true">
<!-- 查询机构信息 -->
<el-form ref="courtReviewform" :model="courtReviewform">
<el-form-item
label="查询机构:"
prop="Arbitor"
:rules="[
{
required: true,
message: '查询机构不能为空',
trigger: 'blur',
},
]"
>
<el-select
placeholder="请选择查询机构"
@change="changeArbitor"
v-model="courtReviewform.Arbitor"
clearable
>
<el-option
v-for="item in atoDataList"
:key="item.id"
:label="item.identifyName"
:value="item.operPhone"
></el-option>
</el-select>
</el-form-item>
</el-form>
<el-table v-loading="loading" :data="dataList" style="width: 100%" @selection-change="handleSelectionChange">
<el-table-column type="selection">
</el-table-column>
<el-table-column label="序号" type="index" align="center">
<template slot-scope="scope">
<span>{{
(queryParamsData.pageNum - 1) * queryParamsData.pageSize + scope.$index + 1
}}</span>
</template>
</el-table-column>
<el-table-column label="案件编号" prop="caseNum" align="center" :show-overflow-tooltip="true" />
<el-table-column label="申请人" align="center" prop="applicantName" :show-overflow-tooltip="true" />
<el-table-column label="案件标的" align="center" prop="caseSubjectAmount"/>
<el-table-column label="仲裁方式" align="center" prop="arbitratMethodName" :show-overflow-tooltip="true" />
<!-- 仲裁员 -->
<el-table-column label="仲裁员" align="center" prop="arbitratorName" />
<!-- 开庭日期 -->
<el-table-column label="开庭日期" align="center" prop="hearDate" :show-overflow-tooltip="true" />
<el-table-column label="案件状态" align="center" prop="caseStatusName">
<template slot-scope="scope">
<el-tag type="success">{{ scope.row.caseStatusName }}</el-tag>
</template>
</el-table-column>
</el-table>
<pagination :total="total" :page.sync="queryParamsData.pageNum"
:limit.sync="queryParamsData.pageSize" />
<div slot="footer" class="dialog-footer">
<el-button @click="cancel" class="endbutton"><span>取 消</span></el-button>
<el-button type="primary" class="endbutton" :disabled="dataList.length == 0 || batchData.length == 0" @click="confirmSeals" :loading="loadingSubmit"><span>确认用印</span></el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import {selectBatchSealUrl,pageSignAdjudicate} from '@/api/caseAccess/caseEntry'
import {deptIdentifyList} from '@/api/officialSeal/officialSeal'
export default {
props:["printingVisable"],
data() {
return {
// 遮罩层
loading: true,
loadingSubmit: false,
// 总条数
total:0,
// 查询参数
queryParamsData: {
caseStatus: 14,
pageNum: 1,
pageSize: 10,
},
// 表格数据
dataList: [],
batchData: [],
atoDataList:[],
courtReviewform: {},
Arbitor: "",
paramsdata:{
ids:[],
psnAccount:""
},
}
},
watch: {
printingVisable(val) {
if (val) {
this.getBatchPrinting(this.queryParamsData)
this.getarbitrAtor()
}
}
},
created(){
this.getBatchPrinting(this.queryParamsData)
// this.getarbitrAtor()
},
methods:{
// 列表查询
getBatchPrinting(val){
this.loading = true;
pageSignAdjudicate(val).then(res=>{
this.dataList = res.rows
this.total = res.total;
this.loading = false;
})
},
// 选择勾选框
handleSelectionChange(val){
this.batchData = [];
val.forEach(item => {
this.batchData.push(item.signFlowId)
this.paramsdata.ids = this.batchData
})
},
// 查询机构信息
getarbitrAtor() {
this.atoDataList =[]
deptIdentifyList({}).then((res) => {
console.log(res)
this.atoDataList = res.rows;
// this.total = res.total;
});
},
// 下拉获取电话号码
changeArbitor(val){
this.paramsdata.psnAccount = val
},
// 确认用印
confirmSeals(){
this.$refs["courtReviewform"].validate((valid) => {
if (valid) {
this.loadingSubmit = true;
selectBatchSealUrl(this.paramsdata).then((res) => {
this.$modal.msgSuccess("确认成功");
this.cancel();
this.getBatchPrinting(this.queryParamsData)
window.open(res.data.signUrl)
this.loadingSubmit = false;
// this.$emit("getcaseApply", this.queryParams);
})
.catch((err) => {
this.loadingSubmit = false;
});
}
});
},
cancel() {
this.$emit("printingOperate");
},
}
}
</script>
@@ -0,0 +1,168 @@
<template>
<div>
<!-- 批量签名 -->
<el-dialog title="批量签名" width="60%" :visible="signatureVisable" @close="cancel" center :distroy-on-close="true">
<el-form ref="courtReviewform" :model="courtReviewform">
<el-form-item
label="仲裁员:"
prop="Arbitor"
:rules="[
{
required: true,
message: '仲裁员不能为空',
trigger: 'blur',
},
]"
>
<el-select
placeholder="请选择仲裁员"
@change="changeArbitor"
v-model="courtReviewform.Arbitor"
clearable
>
<el-option
v-for="item in atoDataList"
:key="item.value"
:label="item.nickName"
:value="item.phonenumber"
></el-option>
</el-select>
</el-form-item>
</el-form>
<el-table v-loading="loading" :data="dataList" style="width: 100%" @selection-change="handleSelectionChange">
<el-table-column type="selection">
</el-table-column>
<el-table-column label="序号" type="index" align="center">
<template slot-scope="scope">
<span>{{
(queryParamsData.pageNum - 1) * queryParamsData.pageSize + scope.$index + 1
}}</span>
</template>
</el-table-column>
<el-table-column label="案件编号" prop="caseNum" align="center" :show-overflow-tooltip="true" />
<el-table-column label="申请人" align="center" prop="applicantName" :show-overflow-tooltip="true" />
<el-table-column label="案件标的" align="center" prop="caseSubjectAmount" />
<el-table-column label="仲裁方式" align="center" prop="arbitratMethodName" :show-overflow-tooltip="true" />
<!-- 仲裁员 -->
<el-table-column label="仲裁员" align="center" prop="arbitratorName" />
<!-- 开庭日期 -->
<el-table-column label="开庭日期" align="center" prop="hearDate" :show-overflow-tooltip="true" />
<el-table-column label="案件状态" align="center" prop="caseStatusName">
<template slot-scope="scope">
<el-tag type="success">
{{ scope.row.caseStatusName }}
</el-tag>
</template>
</el-table-column>
</el-table>
<pagination :total="total" :page.sync="queryParamsData.pageNum"
:limit.sync="queryParamsData.pageSize" @pagination="getBatchComfirmation(queryParamsData)"/>
<div slot="footer" class="dialog-footer">
<el-button @click="cancel" class="endbutton"><span>取 消</span></el-button>
<el-button
type="primary"
class="endbutton"
:disabled="dataList.length == 0 || batchData.length == 0"
@click="witnessing" :loading="loadingSubmit"><span>确认签名</span></el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import {selectBatchSignUrl,pageSignAdjudicate} from '@/api/caseAccess/caseEntry'
import { arbitrAtor} from "@/api/formationCourt/formationCourt";
export default {
props:["signatureVisable"],
data() {
return {
// 遮罩层
loading: true,
loadingSubmit: false,
// 总条数
total:0,
// 查询参数
queryParamsData: {
caseStatus: 13,//待定
pageNum: 1,
pageSize: 10,
},
// 表格数据
dataList: [],
batchData: [],
atoDataList:[],
courtReviewform: {},
Arbitor: "",
paramsdata:{
ids:[],
psnAccount:""
},
}
},
watch: {
signatureVisable(val) {
if (val) {
this.getBatchSignation(this.queryParamsData)
this.getarbitrAtor()
}
}
},
created(){
this.getBatchSignation(this.queryParamsData)
// this.getarbitrAtor()
},
methods:{
// 列表查询
getBatchSignation(val){
this.loading = true;
pageSignAdjudicate(val).then(res=>{
this.dataList = res.rows
this.total = res.total;
this.loading = false;
})
},
// 选择勾选框
handleSelectionChange(val){
this.batchData = [];
val.forEach(item => {
this.batchData.push(item.signFlowId)
this.paramsdata.ids = this.batchData
})
},
// 获取仲裁员信息
getarbitrAtor() {
this.atoDataList =[]
arbitrAtor({}).then((res) => {
this.atoDataList = res.rows;
// this.total = res.total;
});
},
changeArbitor(val) {
this.paramsdata.psnAccount =val
},
// 确认签名
witnessing(){
this.$refs["courtReviewform"].validate((valid) => {
if (valid) {
this.loadingSubmit = true;
selectBatchSignUrl(this.paramsdata).then((res) => {
this.$modal.msgSuccess("确认成功");
this.cancel();
this.getBatchSignation(this.queryParamsData)
window.open(res.data.signUrl)
this.loadingSubmit = false;
// this.$emit("getcaseApply", this.queryParams);
})
.catch((err) => {
this.loadingSubmit = false;
});
}
});
},
cancel() {
this.$emit("signatureOperate");
},
}
}
</script>
@@ -1,14 +1,7 @@
<template>
<div>
<!-- 立案申请弹框 -->
<el-dialog
title="案件压缩"
:visible="openCompressedPackages"
width="600px"
append-to-body
@close="cancel"
center
>
<el-dialog title="案件压缩包导入" :visible="openCompressedPackages" width="600px" append-to-body @close="cancel" center>
<el-form ref="form" :model="form" :rules="rules" label-width="150px">
<el-row>
<!-- <el-col :span="16">
@@ -16,7 +9,7 @@
<el-input v-model="form.jobName" placeholder="请输入姓名" />
</el-form-item>
</el-col>-->
<el-col :span="15">
<!-- <el-col :span="15">
<div class="download" style="">
<span> 下载: </span>
<a href="#">
@@ -25,12 +18,12 @@
</div>
</el-col>
<el-col :span="15">
<div style="margin:10px 0;font-size:12px;color:grey">
<span>
提示:请将多个excel文件压缩成zip格式后上传
</span>
</div>
</el-col>
<div style="margin:10px 0;font-size:12px;color:grey">
<span>
提示:请将多个excel文件压缩成zip格式后上传
</span>
</div>
</el-col> -->
<!-- <el-col :span="12">
<el-form-item label="立案申请书:" prop="applybook"> </el-form-item>
</el-col>
@@ -38,31 +31,36 @@
</el-row>
<el-row>
<el-form-item :span="24" label="案件压缩包上传:" prop="upload">
<el-upload
class="upload-demo"
ref="uploadZipBatch"
:limit="1"
accept=".zip"
:headers="upload.headers"
:action="upload.url"
:disabled="upload.isUploading"
:on-progress="handleFileUploadProgress"
:on-success="handleFileSuccess"
:auto-upload="false"
drag
>
<i class="el-icon-upload"></i>
<div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
<el-upload class="upload-demo" ref="uploadZipBatch" :limit="1" accept=".zip" :headers="upload.headers" :on-error="onError"
:action="upload.url" :disabled="upload.isUploading" :on-progress="handleFileUploadProgress"
:on-success="handleFileSuccess" :auto-upload="false" :data="paramsData" drag>
<i class="el-icon-upload"></i>
<div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
<!-- <el-button size="small" type="primary">点击上传</el-button> -->
<div slot="tip" class="el-upload__tip">
支持zip格式文件
</div>
</el-upload>
</el-form-item>
<el-form-item :span="24" label="裁决书模板" prop="templateId">
<el-select v-model="form.templateId" placeholder="请选择">
<el-option v-for="dict in templateList" :key="dict.id" :label="dict.temName" :value="dict.id"></el-option>
</el-select>
</el-form-item>
<el-form-item :span="24" label="申请人类型" prop="applicantType">
<el-select v-model="form.applicantType" placeholder="请选择">
<el-option v-for="item in appList" :key="item.id" :label="item.temName" :value="item.id"></el-option>
</el-select>
</el-form-item>
<el-form-item :span="24" label="被申请人类型" prop="resType">
<el-select v-model="form.resType" placeholder="请选择">
<el-option v-for="item in resList" :key="item.id" :label="item.temName" :value="item.id"></el-option>
</el-select>
</el-form-item>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm" class="endbutton"><span>确 定</span></el-button>
<el-button type="primary" @click="submitForm" class="endbutton" :loading="loadingSubmit"><span>确 定</span></el-button>
<el-button @click="cancel" class="endbutton1"><span>取 消</span></el-button>
</div>
</el-dialog>
@@ -70,19 +68,40 @@
</template>
<script>
import { importTemplate } from "@/api/caseAccess/caseEntry";
import {
getTemplate,
} from "@/api/officialSeal/officialSeal.js";
import { getToken } from "@/utils/auth";
export default {
props: ["openCompressedPackages","getcaseApply","queryParams"],
props: ["openCompressedPackages", "getcaseApply", "queryParams"],
data() {
return {
// key: value,
form: {},
fileList: [],
appList: [
{ id: 1, temName: "自然人" },
{ id: 2, temName: "机构" },
],
resList: [
{ id: 1, temName: "自然人" },
{ id: 2, temName: "机构" },
],
templateList: [],
loadingSubmit:false,
rules: {
upload: [
{ required: true, message: "案件压缩包不能为空", trigger: "blur" },
templateId: [
{ required: true, message: "裁决书模板不能为空", trigger: "blur" },
],
applicantType: [
{ required: true, message: "申请人类型不能为空", trigger: "blur" },
],
resType: [
{ required: true, message: "被申请人类型不能为空", trigger: "blur" },
],
},
paramsData:{
// templateId:this.form.templateId
},
// 案件压缩导入
upload: {
@@ -101,16 +120,43 @@ export default {
},
};
},
watch: {
openCompressedPackages(val) {
if (val) {
this.form = {}
this.getTemplateFn({
pageNum: 1,
pageSize: 10000000,
})
}
},
},
methods: {
submitForm() {
this.$refs.uploadZipBatch.submit();
this.paramsData.templateId = this.form.templateId;
this.paramsData.applicantType = this.form.applicantType;
this.paramsData.resType = this.form.resType;
this.$refs["form"].validate((valid) => {
this.loadingSubmit = true
if (valid) {
this.$refs.uploadZipBatch.submit();
}
})
},
// 获取裁决书模板
getTemplateFn(data) {
getTemplate(data).then(res => {
this.templateList = res.rows;
})
},
// 取消
cancel() {
this.$emit("cancelCompreess");
},
handleRemove(file, fileList) {},
handlePreview(file) {},
handleRemove(file, fileList) { },
handlePreview(file) { },
handleExceed(files, fileList) {
this.$message.warning(
`当前限制选择 1个文件,本次选择了 ${files.length} `
@@ -121,7 +167,6 @@ export default {
},
// 下载模板 importTemplate
downloadTemplate() {
// console.log("下载模板");
this.download(
"caseApplication/uploadCaseZipFile",
{},
@@ -134,30 +179,33 @@ export default {
},
// 文件上传成功处理
handleFileSuccess(response, file, fileList) {
// this.upload.open = false;
this.$emit("cancelCompreess");
this.upload.isUploading = false;
this.$refs.uploadZipBatch.clearFiles();
if(response.code ==200){
if (response.code == 200) {
this.loadingSubmit = false
this.$alert(
"<div style='overflow: auto;overflow-x: hidden;max-height: 70vh;padding: 10px 20px 0;'>" +
"<div style='overflow: auto;overflow-x: hidden;max-height: 70vh;padding: 10px 20px 0;'>" +
response.msg +
"</div>",
"导入结果",
{ dangerouslyUseHTMLString: true }
)
}else{
"导入结果",
{ dangerouslyUseHTMLString: true }
)
this.$emit("getcaseApply", this.queryParams);
} else {
this.loadingSubmit = false
this.$alert(
"<div style='overflow: auto;overflow-x: hidden;max-height: 70vh;padding: 10px 20px 0;'>" +
"<div style='overflow: auto;overflow-x: hidden;max-height: 70vh;padding: 10px 20px 0;'>" +
"导入压缩失败" +
"</div>",
"导入结果",
{ dangerouslyUseHTMLString: true }
)
"导入结果",
{ dangerouslyUseHTMLString: true }
)
}
this.getcaseApply(this.queryParams);
},
onError(){
this.loadingSubmit = false
}
},
};
</script>
@@ -165,22 +213,25 @@ export default {
<style lang="scss" scoped>
.download {
a {
.uploadlink{
border: none;
color: #2092c7;
.uploadlink {
border: none;
color: #2092c7;
}
}
}
::v-deep .el-dialog {
width: 800px;
background: #ffffff;
border-radius: 20px;
}
.endbutton {
width: 154px;
height: 37px;
background: #0072ff;
border-radius: 19px;
span {
width: 96px;
height: 15px;
@@ -190,12 +241,14 @@ export default {
color: #ffffff;
}
}
.endbutton1 {
width: 154px;
height: 37px;
background: #ffffff;
border: 1px solid #d0d0d0;
border-radius: 19px;
span {
width: 31px;
height: 13px;
File diff suppressed because it is too large Load Diff
@@ -5,11 +5,18 @@
:visible="caseentryExamineVisible"
@close="cancel"
width="1000px"
height="800px"
append-to-body
:destroy-on-close="true"
center
>
<!-- 案件信息 -->
<!-- tab页 -->
<el-tabs v-model="activeName" @tab-click="handleClick">
<el-tab-pane label="案件基本信息" name="first"></el-tab-pane>
<el-tab-pane label="自定义抓取内容" name="second"></el-tab-pane>
</el-tabs>
<div v-show="activeName=='first'">
<!-- 案件信息 -->
<el-form
ref="form"
:model="formData"
@@ -767,26 +774,43 @@
</el-row>
</div>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button
type="primary"
@click="submitIsAgree(1)"
v-if="
formData.updateSubmitStatus == 1 || formData.updateSubmitStatus == 2
"
class="endbutton"
><span>同 意</span></el-button
>
<el-button
type="warning"
@click="submitIsAgree(0)"
v-if="
formData.updateSubmitStatus == 1 || formData.updateSubmitStatus == 2
"
class="endbutton2"
><span>拒 绝</span></el-button
>
<div slot="footer" class="dialog-footer" style="text-align:center;margin-top:20px;">
<el-button
type="primary"
@click="submitIsAgree(1)"
v-if="
formData.updateSubmitStatus == 1 || formData.updateSubmitStatus == 2
"
class="endbutton"
><span>同 意</span></el-button
>
<el-button
type="warning"
@click="submitIsAgree(0)"
v-if="
formData.updateSubmitStatus == 1 || formData.updateSubmitStatus == 2
"
class="endbutton2"
><span>拒 绝</span></el-button
>
</div>
</div>
<div v-show="activeName=='second'">
<el-form :model="formGrab" class="formbox" label-width="120px" >
<el-form-item
v-for="(item,index) in formGrab.list"
:label="item.name"
:key="item.id"
:class="changeLableColumn.indexOf(item.column)==-1?'':'red'"
>
<el-input type="textarea" v-model="item.value"></el-input>
</el-form-item>
</el-form>
</div>
</el-dialog>
</div>
</template>
@@ -808,14 +832,20 @@ export default {
"caseAttachList",
"caseentryExamineVisible",
"caseentryExamineData",
"caseentryExamineDataAll"
"caseentryExamineDataAll",
],
data() {
return {
activeName: 'first',
// 抓取内容
formGrab:{
list:[]
},
formData: {},
changeLableCode: [],
changeLableCode1: [],
changeLableCode2: [],
changeLableColumn:[],
filedata: {
annexType: 2,
},
@@ -960,6 +990,10 @@ export default {
watch: {
caseentryExamineVisible: {
handler(val) {
this.activeName = "first"
if(this.caseentryExamineDataAll.afterCase.columnValues){
this.formGrab.list = this.caseentryExamineDataAll.afterCase.columnValues
}
setTimeout(() => {
if (val) {
this.applicateArr = [];
@@ -967,6 +1001,7 @@ export default {
this.formData = this.caseentryExamineData;
if (this.caseentryExamineDataAll.changeColumn) {
this.changeLableCode = this.caseentryExamineDataAll.changeColumn.split(',')
console.log(this.changeLableCode)
} else {
this.changeLableCode = []
}
@@ -986,6 +1021,13 @@ export default {
} else {
this.changeLableCode2 = []
}
if(this.caseentryExamineDataAll.columnValueChangeColumn){
this.changeLableColumn = this.caseentryExamineDataAll.columnValueChangeColumn.split(',')
console.log(this.changeLableColumn)
}else{
this.changeLableColumn = []
}
this.fileList = [];
this.form2.paymentArr = [
this.caseentryExamineData.caseAffiliates[0],
@@ -1150,6 +1192,7 @@ export default {
updateSubmitStatus: this.formData.updateSubmitStatus,
isAgree: row,
version: this.formData.version,
columnValues:this.formGrab.list
};
updateAudit(parms).then((res) => {
this.$modal.msgSuccess("审核成功");
@@ -1171,6 +1214,10 @@ export default {
"_black"
);
},
// tab页
handleClick(tab, event){
}
},
};
</script>
@@ -8,57 +8,99 @@
@close="cancel"
:destroy-on-close="true"
>
<el-descriptions>
<el-descriptions-item label="当前仲裁方式:">
<el-tag size="small">{{
choosetrialmethodata.arbitratMethodName
}}</el-tag>
</el-descriptions-item>
</el-descriptions>
<div v-show="formData.arbitraMethodIssame!=2">
<el-descriptions>
<el-descriptions-item label="当前仲裁方式:">
<el-tag size="small">{{
formData.arbitratMethodName
}}</el-tag>
</el-descriptions-item>
</el-descriptions>
<!-- <div class="radiobox">
<el-radio-group v-model="radio">
<el-radio :label="0">拒绝开庭方式</el-radio>
<el-radio :label="1">同意开庭方式</el-radio>
</el-radio-group>
</div> -->
<!-- <div class="radiobox">
<el-radio-group v-model="radio">
<el-radio :label="0">拒绝开庭方式</el-radio>
<el-radio :label="1">同意开庭方式</el-radio>
</el-radio-group>
</div> -->
<!-- <div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm" class="endbutton"
><span>提 交</span></el-button
>
<el-button @click="cancel" class="endbutton1"
><span> 取 消</span></el-button
>
</div> -->
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm(1)" class="endbutton"
><span>同 意</span></el-button
>
<el-button class="endbutton1" @click="submitForm(0)"
><span>拒 绝</span></el-button
>
</div>
<!-- <div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm" class="endbutton"
><span>提 交</span></el-button
>
<el-button @click="cancel" class="endbutton1"
><span> 取 消</span></el-button
>
</div> -->
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm(1)" class="endbutton"
><span>同 意</span></el-button
>
<el-button class="endbutton1" @click="submitForm(0)"
><span>拒 绝</span></el-button
>
</div>
</div>
<div v-show="formData.arbitraMethodIssame==2">
<div>{{formData.arbitratMethodIllustrate}}</div>
<el-form :model="form" :rules="rules" ref="form">
<el-form-item label="选择开庭方式" prop="arbitratMethod">
<el-radio-group v-model="form.arbitratMethod">
<el-radio :label=2>书面审理</el-radio>
<el-radio :label=1>开庭审理</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item>
<el-button type="primary" @click="determine(2)" :loading="loadingSubmit">确定</el-button>
<el-button @click="cancel">取消</el-button>
</el-form-item>
</el-form>
</div>
</el-dialog>
</div>
</template>
<script>
import { arbitrateMethod } from "@/api/caseManagement/caseManagement.js";
import { selectCaseApply } from "@/api/caseAccess/caseEntry";
export default {
name: "showchoosetrialmethodDialog",
props: ["showchoosetrialmethod", "choosetrialmethodata", "queryParams"],
data() {
return {};
return {
form:{},
loadingSubmit: false,
rules:{
arbitratMethod: [
{ required: true, message: '请选择开庭方式', trigger: 'change' }
]
},
formData:{}
};
},
watch:{
showchoosetrialmethod(val){
if(val){
let params = {
id: this.choosetrialmethodata.id,
version: this.choosetrialmethodata.version
}
selectCaseApply(params).then(res=>{
console.log(res,"PPPPPPPPPPPPPPPPPPPPPPPPPPPPP");
this.formData = res.data;
})
}
}
},
methods: {
// 审核仲裁方式 arbitrateMethod
submitForm(val) {
let paramsdata = {
opinion: val,
opinion: val
};
let id = {
id: this.choosetrialmethodata.id,
id: this.formData.id,
arbitratMethod:this.formData.arbitratMethod
};
arbitrateMethod(paramsdata,id)
.then((res) => {
@@ -68,6 +110,32 @@ export default {
})
.catch((err) => {});
},
determine(val){
this.$refs["form"].validate((valid) => {
if (valid) {
this.loadingSubmit = true;
let paramsdata = {
opinion: val,
arbitratMethod:this.form.arbitratMethod
};
let id = {
id: this.choosetrialmethodata.id,
};
arbitrateMethod(paramsdata,id)
.then((res) => {
this.$modal.msgSuccess("提交成功");
this.cancel();
this.$emit("getcaseApply", this.queryParams);
this.loadingSubmit = false;
})
.catch((err) => {
this.loadingSubmit = false;
});
} else {
return false;
}
});
},
cancel() {
this.$emit("cancelshowchoosetrialMethod");
},
@@ -52,7 +52,7 @@
<el-option
v-for="item in dataList"
:key="item.value"
:label="item.nickName"
:label="item.nickNameAndNum"
:value="item.userId"
></el-option>
</el-select>
@@ -60,7 +60,7 @@
<!-- </div> -->
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm" class="endbutton"
<el-button type="primary" :loading="loadingSubmit" @click="submitForm" class="endbutton"
><span>确 定</span>
</el-button>
<el-button @click="cancel" class="endbutton1"
@@ -86,6 +86,7 @@ export default {
hearDate: null,
},
noArbitrator: false,
loadingSubmit: false,
isAgreePendTral: 1,
total: 0,
queryParams1: {
@@ -102,13 +103,14 @@ export default {
};
},
created() {
this.getarbitrAtor();
// this.getarbitrAtor();
},
watch: {
showcourtReview(val) {
if (val) {
this.isAgreePendTral = 1;
this.courtReviewform.hearDate = null;
this.getarbitrAtor({caseId:this.form.id});
}
},
form: {
@@ -123,9 +125,9 @@ export default {
},
methods: {
// 获取仲裁员信息
getarbitrAtor() {
arbitrAtor({}).then((res) => {
this.dataList = res.rows;
getarbitrAtor(val) {
arbitrAtor(val).then((res) => {
this.dataList = res.data;
this.total = res.total;
});
},
@@ -162,13 +164,17 @@ export default {
}
this.$refs["courtReviewform"].validate((valid) => {
if (valid) {
this.loadingSubmit = true;
pendTralSure(this.paramsdata)
.then((res) => {
this.$modal.msgSuccess("确认成功");
this.cancel();
this.$emit("getcaseApply", this.queryParams);
this.loadingSubmit = false;
})
.catch((err) => {});
.catch((err) => {
this.loadingSubmit = false;
});
}
});
},
@@ -0,0 +1,133 @@
<template>
<div>
<el-dialog title="案件详情" :visible="showarchiveDetails" @close="cancel" :destroy-on-close="true" center>
<div class="loading" v-if="flagLoadingS">
<i class="el-icon-loading"></i>
</div>
<div v-else>
<!-- <div class="noData" v-if="noData">暂无数据!</div> -->
<el-tabs v-model="activeName" @tab-click="handleClick">
<el-tab-pane label="申请人案件证据资料" name="first"></el-tab-pane>
<el-tab-pane label="被申请人案件证据资料" name="second"></el-tab-pane>
<el-tab-pane label="裁决书附件" name="third"></el-tab-pane>
<!-- <el-tab-pane label="仲裁申请书" name="fourth"></el-tab-pane> -->
<el-tab-pane label="案件视频" name="five"></el-tab-pane>
<el-tab-pane label="庭审笔录" name="six"></el-tab-pane>
<el-tab-pane label="案件异议信息" name="seven"></el-tab-pane>
</el-tabs>
<div v-show="activeName=='first'">
<div v-for="(item,index) in detailsAwardNum.caseAttachList" :key="index" v-if="item.annexType==2" style="margin-top:10px;">
<el-link target="_blank" type="primary" :href="fileURL+item.annexPath">{{item.annexName}}</el-link>
</div>
<el-empty v-if="isNoData(detailsAwardNum.caseAttachList,2) == 0" description="暂无数据"></el-empty>
</div>
<div v-show="activeName=='second'">
<div v-for="item in detailsAwardNum.caseAttachList" v-if="item.annexType==6" style="margin-top:10px;">
<el-link target="_blank" type="primary" :href="fileURL+item.annexPath">{{item.annexName}}</el-link>
</div>
<el-empty v-if="isNoData(detailsAwardNum.caseAttachList,6) == 0" description="暂无数据"></el-empty>
</div>
<div v-show="activeName=='third'">
<div v-for="item in detailsAwardNum.caseAttachList" v-if="item.annexType==3" style="margin-top:10px;">
<el-link target="_blank" type="primary" :href="fileURL+item.annexPath">{{item.annexName}}</el-link>
</div>
<el-empty v-if="isNoData(detailsAwardNum.caseAttachList,3) == 0" description="暂无数据"></el-empty>
</div>
<div v-show="activeName=='fourth'">
<div v-for="item in detailsAwardNum.caseAttachList" v-if="item.annexType==1" style="margin-top:10px;">
<el-link target="_blank" type="primary" :href="fileURL+item.annexPath">{{item.annexName}}</el-link>
</div>
<el-empty v-if="isNoData(detailsAwardNum.caseAttachList,1) == 0" description="暂无数据"></el-empty>
</div>
<div v-show="activeName=='five'">
<video style="background-color: #181717;width: 350px;height: 200px;margin: 10px;" :src="headPath + item.annexPath" v-for="(item,index) in videoList" :key="index" controls="controls"></video>
<el-empty v-if="videoList == null || videoList.length ==0" description="暂无数据"></el-empty>
</div>
<!-- <div v-show="activeName=='six'">
<div v-for="(item,index) in trialTranscripts" :key="index" style="margin-top:10px;">
<el-link target="_blank" type="primary" :href="fileURL+item.annexPath">{{item.annexName}}</el-link>
</div>
<el-empty v-if="trialTranscripts == null || trialTranscripts.length ==0" description="暂无数据"></el-empty>
</div> -->
<div v-show="activeName=='six'">
<div v-for="item in detailsAwardNum.caseAttachList" v-if="item.annexType==7" style="margin-top:10px;">
<el-link target="_blank" type="primary" :href="fileURL+item.annexPath">{{item.annexName}}</el-link>
</div>
<el-empty v-if="isNoData(detailsAwardNum.caseAttachList,7) == 0" description="暂无数据"></el-empty>
</div>
<div v-show="activeName=='seven'">
<div v-if="detailsAwardNum.adjudicaCounterReason">案件异议信息:{{detailsAwardNum.adjudicaCounterReason}}</div>
<el-empty v-if="!detailsAwardNum.adjudicaCounterReason" description="暂无数据"></el-empty>
</div>
</div>
<div slot="footer" class="dialog-footer">
<el-button @click="cancel">取 消</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
export default {
props: ["showarchiveDetails","detailsAwardNum","videoList","flagLoadingS","trialTranscripts"],
components: {
},
data() {
return {
activeName: 'first',
fileURL: window.location.origin + "/API",
headPath:window.location.origin + "/API",
noData: false,
// myData:[],
// videoLists:[]
};
},
created(){
},
methods: {
isNoData(data,type){
let resNumber = 0
if(data){
let list = data.filter(item => item.annexType == type)
if(list){
resNumber = list.length
}
}
return resNumber
},
handleClick(tab, event) {
},
cancel() {
this.$emit("cancelDetail");
// this.activeName ="first"
},
},
}
</script>
<style lang="scss" scoped>
::v-deep .el-dialog__body {
height: 500px !important;
overflow: auto !important;
}
::v-deep .el-dialog {
width: 850px;
background: #ffffff;
border-radius: 20px;
}
.loading {
width: 100%;
height: 100%;
display: flex;
justify-content: center;
align-items: center;
.el-icon-loading {
font-size: 50px;
}
}
</style>
@@ -0,0 +1,100 @@
<template>
<div>
<el-dialog
title="证据清单"
:visible="evidenceListD"
:caseAttachListR = "caseAttachListR"
@close="cancel"
center
:distroy-on-close="true"
>
<div class="loading" v-if ="flagLoading">
<i class="el-icon-loading"></i>
</div>
<div>申请人证据清单:</div>
<div v-for="item in this.caseAttachListR" style="margin-top:10px;">
<el-link target="_blank" type="primary" v-if="item.annexType == 2" :href="fileURL+item.annexPath">{{item.annexName}}</el-link>
</div>
<div style="margin-top:30px;;">被申请人证据清单:</div>
<div v-for="item in this.caseAttachListR" style="margin-top:10px;">
<el-link target="_blank" type="primary" v-if="item.annexType == 6" :href="fileURL+item.annexPath">{{item.annexName}}</el-link>
</div>
<div slot="footer" class="dialog-footer">
<el-button @click="cancel" class="endbutton1"
><span>取 消</span></el-button>
</div>
</el-dialog>
</div>
</template>
<script>
export default {
props: ["evidenceListD", "flagLoading", "caseAttachListR"],
data() {
return {
fileURL: window.location.origin + "/API",
myData:[]
};
},
created(){
// 获取组件传值监听
// this.$watch('caseAttachListR',(newVal)=>{
// this.myData = newVal;
// console.log(this.myData)
// })
},
methods: {
cancel() {
this.$emit("cancelevidenceList");
}
},
};
</script>
<style lang="scss" scoped>
::v-deep .el-dialog__body {
height: 500px !important;
overflow: auto !important;
}
::v-deep .el-dialog {
width: 800px;
background: #ffffff;
border-radius: 20px;
}
.endbutton1 {
width: 154px;
height: 37px;
background: #ffffff;
border: 1px solid #d0d0d0;
border-radius: 19px;
span {
width: 31px;
height: 13px;
font-size: 16px;
font-family: Microsoft YaHei;
font-weight: 400;
color: #959595;
}
}
.loading {
width: 100%;
height: 100%;
display: flex;
justify-content: center;
align-items: center;
.el-icon-loading {
font-size: 50px;
}
}
.noData {
width: 100%;
height: 400px;
font-size: 30px;
font-weight: 700;
color: #959595;
display: flex;
justify-content: center;
align-items: center;
}
</style>
@@ -0,0 +1,129 @@
<template>
<div>
<el-dialog
title="快递信息"
:visible="showDelivery"
@close="cancel"
center
:distroy-on-close="true"
>
<div class="loading" v-if="flagLoading">
<i class="el-icon-loading"></i>
</div>
<div v-else>
<div class="noData" v-if="noData">暂无快递信息!</div>
<div v-else>
<div class="deliverName">
{{ applicantdelivery.company }} {{ applicantdelivery.no }}
</div>
<el-divider></el-divider>
<el-timeline :reverse="reverse">
<el-timeline-item
v-for="(activity, index) in activities"
:key="index"
:timestamp="activity.timestamp"
>
{{ activity.content }}
</el-timeline-item>
</el-timeline>
</div>
</div>
<div slot="footer" class="dialog-footer">
<el-button @click="cancel" class="endbutton"
><span>取 消</span></el-button
>
</div>
</el-dialog>
</div>
</template>
<script>
export default {
props: ["showDelivery", "deliveryDataArr", "flagLoading"],
data() {
return {
// key: value
reverse: true,
applicantdelivery: {}, //申请人物流信息
activities: [],
noData: false,
};
},
watch: {
deliveryDataArr: {
handler(val) {
if (val) {
val.forEach((item) => {
if (item.identityType == 1) {
let applicantdata = item.logisticsInfo;
this.applicantdelivery = JSON.parse(applicantdata);
if (this.applicantdelivery.list) {
this.activities = this.applicantdelivery.list;
this.activities.forEach((item) => {
item.content = item.datetime;
item.timestamp = item.remark;
});
} else {
this.noData = true;
return;
}
}
});
}
},
},
},
methods: {
cancel() {
this.$emit("closeDeliveryModel");
},
},
};
</script>
<style lang="scss" scoped>
::v-deep .el-dialog {
width: 600px;
background: #ffffff;
border-radius: 20px;
}
.deliverName {
margin-left: 6%;
font-size: 16px;
font-weight: 500;
}
.endbutton {
width: 154px;
height: 37px;
background: #ffffff;
border: 1px solid #d0d0d0;
border-radius: 19px;
span {
width: 31px;
height: 13px;
font-size: 16px;
font-family: Microsoft YaHei;
font-weight: 400;
color: #959595;
}
}
.loading {
width: 100%;
height: 100%;
display: flex;
justify-content: center;
align-items: center;
.el-icon-loading {
font-size: 50px;
}
}
.noData {
width: 100%;
font-size: 20px;
font-weight: 700;
color: #959595;
display: flex;
justify-content: center;
align-items: center;
}
</style>
@@ -1,27 +1,22 @@
<template>
<div>
<!-- 立案审查 -->
<el-dialog
title="立案审查"
:visible="showfilingreview"
width="500px"
@close="cancel"
:destroy-on-close="true"
>
<el-dialog title="立案审查" :visible="showfilingreview" width="500px" @close="cancel" :destroy-on-close="true">
<div class="radiobox">
<el-radio-group v-model="radio">
<el-radio-group v-model="radio" style="margin-bottom: 20px;">
<el-radio :label="1">同意</el-radio>
<el-radio :label="2">拒绝</el-radio>
</el-radio-group>
<el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="100px">
<!-- TODO -->
<el-form-item label="拒绝原因" prop="caseCheckReject" v-if="radio == 2">
<el-input type="textarea" :rows="2" placeholder="请输入拒绝原因" v-model="ruleForm.caseCheckReject"></el-input>
</el-form-item>
</el-form>
</div>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm" class="endbutton"
><span>提 交</span></el-button
>
<el-button @click="cancel" class="endbutton1"
><span> 取 消</span></el-button
>
<el-button type="primary" @click="submitForm" class="endbutton" :loading="loadingSubmit"><span>提 交</span></el-button>
<el-button @click="cancel" class="endbutton1"><span> 取 消</span></el-button>
</div>
</el-dialog>
</div>
@@ -37,21 +32,41 @@ export default {
data() {
return {
radio: 1,
ruleForm: {},
loadingSubmit: false,
rules: {
caseCheckReject: [
{
required: true,
message: "拒绝原因不能为空",
trigger: "blur",
},
],
}
};
},
methods: {
submitForm() {
let paramsdata = {
agreeOrNotCheck: this.radio,
ids: [this.filingreviewdata.id],
};
submitCaseApplicationCheck(paramsdata)
.then((res) => {
this.$modal.msgSuccess("提交成功");
this.cancel();
this.$emit("getcaseApply", this.queryParams);
})
.catch((err) => {});
this.$refs["ruleForm"].validate((valid) => {
if (valid) {
this.loadingSubmit = true;
let paramsdata = {
agreeOrNotCheck: this.radio,
ids: [this.filingreviewdata.id],
caseCheckReject:this.ruleForm.caseCheckReject
};
submitCaseApplicationCheck(paramsdata)
.then((res) => {
this.$modal.msgSuccess("提交成功");
this.cancel();
this.$emit("getcaseApply", this.queryParams);
this.loadingSubmit = false;
})
.catch((err) => {
this.loadingSubmit = false;
});
}
});
},
cancel() {
this.$emit("cancelFilingreview");
@@ -64,16 +79,19 @@ export default {
.radiobox {
margin-left: 5%;
}
::v-deep .el-dialog {
width: 800px;
background: #ffffff;
border-radius: 20px;
}
.endbutton {
width: 124px;
height: 37px;
background: #0072ff;
border-radius: 19px;
span {
width: 32px;
height: 15px;
@@ -84,12 +102,14 @@ export default {
// line-height: 48px;
}
}
.endbutton1 {
width: 124px;
height: 37px;
background: #ffffff;
border: 1px solid #d0d0d0;
border-radius: 19px;
span {
width: 31px;
height: 13px;
@@ -2,7 +2,7 @@
<div>
<!-- 组庭界面 -->
<el-dialog
title="组庭建议"
title="组庭审核"
:visible="showformateCourt"
v-if="showformateCourt"
@close="cancel"
@@ -15,16 +15,16 @@
label-width="110px"
label-position="left"
>
<el-form-item label="是否同意组庭:">
<!-- <el-form-item label="是否同意组庭:">
<el-radio-group v-model="isAgreePendTral" @change="radioValue">
<el-radio :label="1">是</el-radio>
<el-radio :label="0">否</el-radio>
</el-radio-group>
</el-form-item>
<el-tag type="warning" v-if="noArbitrator"
</el-form-item> -->
<!-- <el-tag type="warning" v-if="noArbitrator"
>当前案件未指定仲裁员,请先指定仲裁员!</el-tag
>
<p></p>
> -->
<!-- <p></p> -->
<!-- <el-form ref="form"> -->
<!-- v-if="isAgreePendTral == 0 || noArbitrator" -->
<div style="display: inline-flex; margin-bottom: 8px">
@@ -61,14 +61,14 @@
<el-option
v-for="item in dataList"
:key="item.value"
:label="item.nickName"
:label="item.nickNameAndNum"
:value="item.userId"
></el-option>
</el-select>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm" class="endbutton"
<el-button type="primary" @click="submitForm" class="endbutton" :loading="loadingSubmit"
><span>确 定</span></el-button
>
<el-button @click="cancel" class="endbutton1"
@@ -86,6 +86,7 @@ export default {
data() {
return {
dataList: [],
loadingSubmit: false,
queryParams1: {
pageNum: 1,
pageSize: 10,
@@ -99,13 +100,15 @@ export default {
};
},
created() {
this.getarbitrAtor();
// this.getarbitrAtor();
},
watch: {
showformateCourt(val){
console.log(this.formateCourtData)
this.Arbitor = ""
if(val){
this.isAgreePendTral = 1;
this.getarbitrAtor({caseId:this.formateCourtData.id});
}
},
formateCourtData: {
@@ -120,10 +123,10 @@ export default {
},
methods: {
// 获取仲裁员信息
getarbitrAtor() {
arbitrAtor({}).then((res) => {
this.dataList = res.rows;
// console.log(this.dataList, "this.dataList");
getarbitrAtor(val) {
console.log(val,"ppppppppppppppppppp")
arbitrAtor(val).then((res) => {
this.dataList = res.data;
});
},
changeArbitor(val) {
@@ -143,6 +146,9 @@ export default {
this.paramsdata = {
id: this.formateCourtData.id,
arbitrators: this.arbitrators,
arbitratorId:this.formateCourtData.arbitratorId,
arbitratorName:this.formateCourtData.arbitratorName
};
} else {
if (this.isAgreePendTral == 0) {
@@ -150,24 +156,33 @@ export default {
isAgreePendTral: 0,
id: this.formateCourtData.id,
arbitrators: this.arbitrators,
arbitratorId:this.formateCourtData.arbitratorId,
arbitratorName:this.formateCourtData.arbitratorName
};
} else {
this.paramsdata = {
isAgreePendTral: 1,
id: this.formateCourtData.id,
arbitratorId:this.formateCourtData.arbitratorId,
arbitratorName:this.formateCourtData.arbitratorName
};
}
}
console.log(this.paramsdata)
this.$refs["formateCourtform"].validate((valid) => {
if (valid) {
this.loadingSubmit = true;
pendTralCheck(this.paramsdata).then((res) => {
this.cancel();
this.$modal.msgSuccess("组庭成功");
this.$emit("getcaseApply", this.queryParams);
this.loadingSubmit = false;
// 初始化页面
this.formateCourtform={}
});
}).catch((err) => {
this.loadingSubmit = false;
});;
}
});
},
@@ -0,0 +1,464 @@
<template>
<div>
<el-dialog :title="title" :visible="openDialogInfor" width="1000px" @close="cancel" :destroy-on-close="true">
<el-descriptions title="案件信息" border style="margin-bottom: 30px">
<el-descriptions-item label="案件编号">{{
form.caseNum
}}</el-descriptions-item>
<el-descriptions-item label="案件标的">{{
form.caseSubjectAmount
}}</el-descriptions-item>
<el-descriptions-item label="借款开始日期">{{
form.loanStartDate
}}</el-descriptions-item>
<el-descriptions-item label="借款结束日期">{{
form.loanEndDate
}}</el-descriptions-item>
<el-descriptions-item label="合同编号">{{
form.contractNumber
}}</el-descriptions-item>
<el-descriptions-item label="申请人主张欠本金">{{
form.claimPrinciOwed
}}</el-descriptions-item>
<el-descriptions-item label="申请人主张欠利息">{{
form.claimInterestOwed
}}</el-descriptions-item>
<el-descriptions-item label="申请人主张违约金">{{
form.claimLiquidDamag
}}</el-descriptions-item>
<el-descriptions-item label="申请人案件证据资料">
<p @click="toFile(index, 2)" v-for="(item, index) in applicantFileArr" :key="index">
<a href="#">{{ item }}</a>
</p>
</el-descriptions-item>
<el-descriptions-item label="被申请人案件证据资料">
<p v-for="(item, index) in respondentFileArr" :key="index" @click="toFile(index, 6)">
<a href="#">{{ item }}</a>
</p>
</el-descriptions-item>
<el-descriptions-item label="裁决书附件">
<p v-for="(item, index) in awardFileArr" :key="index" @click="toFile(index, 3)">
<a href="#">{{ item }}</a>
</p>
</el-descriptions-item>
<el-descriptions-item label="庭审笔录附件">
<p v-for="(item, index) in bookFileArr" :key="index" @click="toFile(index, 7)">
<a href="#">{{ item }}</a>
</p>
</el-descriptions-item>
</el-descriptions>
<el-form ref="form" :model="arbitrateRecord" label-width="300px" label-position="left" :rules="rules"
:disabled="flag == 3">
<!-- <el-form-item label="经庭审质证,对各方提供的证据认定如下" prop="evidenDetermi">
<el-input type="textarea" autosize :disabled="flag == 2" placeholder="请输入内容"
v-model="arbitrateRecord.evidenDetermi" />
</el-form-item>
<el-form-item label="仲裁庭经审理查明(写明仲裁庭认定的事实)" prop="factDetermi">
<el-input type="textarea" autosize :disabled="flag == 2" placeholder="请输入内容"
v-model="arbitrateRecord.factDetermi" />
</el-form-item>
<el-form-item label="综上所述" prop="caseSketch">
<el-input type="textarea" autosize :disabled="flag == 2" placeholder="请输入内容"
v-model="arbitrateRecord.caseSketch" />
</el-form-item>
<el-form-item label="本庭认为" prop="arbitrateThink">
<el-input type="textarea" autosize :disabled="flag == 2" placeholder="请输入内容"
v-model="arbitrateRecord.arbitrateThink" />
</el-form-item>
<el-form-item label="裁决如下" prop="rulingFollows">
<el-input type="textarea" autosize :disabled="flag == 2" placeholder="请输入内容"
v-model="arbitrateRecord.rulingFollows" />
</el-form-item>
<el-form-item label="核验裁决书意见:" prop="verificaOpinion">
<el-input type="textarea" autosize :disabled="flag == 2" placeholder="请输入内容"
v-model="arbitrateRecord.verificaOpinion" />
</el-form-item> -->
<!-- <el-form-item label="笔录内容:" prop="responCrossOpin">
<el-input type="textarea" :autosize="{ minRows: 6 }" v-model="arbitrateRecordt.responCrossOpin"
placeholder="请输入" />
</el-form-item> -->
<el-col :span="24">
<el-form-item label="上传裁决书:" label-width="100px" v-if="flag==1|| flag==4">
<el-upload
class="upload-demo"
accept=".doc,.docx"
ref="upload"
:action="UploadUrls()"
:headers="headers"
:data="filedatas"
:before-remove="beforeRemoves"
:limit="2"
:on-change="beforeUpload"
:on-success="handlSuccessAw"
:file-list="fileListAw"
:before-upload="beforeAvatarUploads"
>
<el-button slot="trigger" size="small" type="primary"
>选取文件</el-button
>
<div slot="tip" class="el-upload__tip">
只能上传.doc,docx文件
</div>
</el-upload>
</el-form-item>
</el-col>
<el-form-item label="驳回原因:" label-width="100px" v-if="flag==1 && awardDetailform.arbitrateReject">
<div style="width:800px;">{{awardDetailform.arbitrateReject}}</div>
</el-form-item>
<el-form-item label="驳回原因:" label-width="100px" v-if="flag==4 && awardDetailform.deptorReject">
<div style="width:800px;">{{awardDetailform.deptorReject}}</div>
</el-form-item>
<el-form-item label-width="100px" label="审核意见:" prop="checkOpinion" v-if="flag == 2 || flag == 4">
<el-input type="textarea" autosize placeholder="请输入内容" v-model.trim="arbitrateRecord.checkOpinion" />
</el-form-item>
<!-- 判断是否驳回 -->
<el-form-item label-width="100px" label="是否驳回:" v-if="flag == 2 || flag == 4">
<el-radio-group v-model="agreeOrNotCheck">
<el-radio :label="1">同意</el-radio>
<el-radio :label="2">驳回</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label-width="100px" label="驳回原因" v-if="agreeOrNotCheck==2 && flag == 4" prop="arbitrateReject"
:rules="[
{ required: true, message: '请输入驳回原因', trigger: 'blur' }
]">
<el-input type="textarea" :rows="2" placeholder="请输入驳回原因" v-model.trim="arbitrateRecord.arbitrateReject"></el-input>
</el-form-item>
<el-form-item label-width="100px" label="驳回原因" v-if="agreeOrNotCheck==2 && flag ==2" prop="deptorReject"
:rules="[
{ required: true, message: '请输入驳回原因', trigger: 'blur' }
]">
<el-input type="textarea" :rows="2" placeholder="请输入驳回原因" v-model.trim="arbitrateRecord.deptorReject"></el-input>
</el-form-item>
</el-form>
<!-- 画布 -->
<!-- <h4 v-if="flag == 3">签名区域</h4>
<div class="esign" v-if="flag == 3">
<vue-esign ref="esign" :width="900" :height="300" bgColor="#ffffff" />
</div> -->
<!-- 清除画布 -->
<div slot="footer" class="dialog-footer">
<!-- <el-button type="danger" @click="submitForm(4)" v-if="flag == 1">重新生成裁决书</el-button> -->
<el-button type="primary" @click="submitForm(0)" v-if="flag == 1" :loading="buttonFlag">提 交</el-button>
<el-button type="primary" @click="submitForm(1)" v-if="flag == 2" :loading="buttonFlag">提交</el-button>
<!-- <el-button type="danger" @click="submitForm(2)" v-if="flag == 2">驳 回</el-button> -->
<!-- <el-button type="primary" @click="submitForm(3)" v-if="flag == 3">提 交</el-button> -->
<!-- <el-button type="primary" @click="submitForm(5)" v-if="flag == 4">同 意</el-button> -->
<el-button type="primary" @click="submitForm(6)" v-if="flag == 4" :loading="buttonFlag">提交</el-button>
<el-button @click="cancel">取 消</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import {
verificationArbitrateRecord,
checkArbitrateRecord,
adjudicationSignature,
regenerationDocument,
arbitratorCheckArbitrateRecord
} from "@/api/awardManagement/awardManagement";
import { getToken } from "@/utils/auth";
export default {
props: ["openDialogInfor", "title", "flag", "awardDetailform","queryParams"],
data() {
return {
buttonFlag:false,
// key: value
arbitrateRecordt: {},
agreeOrNotCheck:1,
form: {},
headers: {
Authorization: "Bearer " + getToken(),
},
filedatas: {
annexType: 3,
id:null
},
fileListAw:[],
arbitrateRecord: {
// checkOpinion:"同意"
checkOpinion: ""
},
// 表单校验
rules: {
evidenDetermi: [
{
required: true,
message: "不能为空",
trigger: "blur",
},
],
factDetermi: [
{
required: true,
message: "不能为空",
trigger: "blur",
},
],
caseSketch: [
{
required: true,
message: "不能为空",
trigger: "blur",
},
],
arbitrateThink: [
{
required: true,
message: "不能为空",
trigger: "blur",
},
],
rulingFollows: [
{
required: true,
message: "不能为空",
trigger: "blur",
},
],
verificaOpinion: [
{
required: true,
message: "意见不能为空",
trigger: "blur",
},
],
checkOpinion: [
{
required: true,
message: "意见不能为空",
trigger: "blur",
}
],
// arbitrateReject: [
// {
// required: true,
// message: "拒绝原因不能为空",
// trigger: "blur",
// },
// ],
},
applicantFileArr: [], //申请人
applicantPathArr: [], //申请人
respondentFileArr: [], //被申请人
respondenPathArr: [], //被申请人
awardFileArr: [], //庭审笔录文件
awardPathArr: [], //庭审笔录路径
bookFileArr: [], //裁决书文件
bookPathArr: [], //庭审笔录路径
};
},
watch: {
openDialogInfor:{
handler(val) {
if (val) {
this.agreeOrNotCheck = 1;
}
},
},
awardDetailform: {
handler(val) {
if (val) {
(this.applicantFileArr = []), //申请人
(this.applicantPathArr = []), //申请人
(this.respondentFileArr = []), //被申请人
(this.respondenPathArr = []), //被申请人
(this.awardFileArr = []), //裁决书
(this.awardPathArr = []), //裁决书
// setTimeout(() => {
this.form = this.awardDetailform;
console.log(this.form)
// if(this.form.arbitrateRecord && this.form.arbitrateRecord.checkOpinion == null ){
// this.form.arbitrateRecord.checkOpinion = '同意';
this.arbitrateRecord.checkOpinion = '';
// }
this.arbitrateRecord = {};
if (this.form.arbitrateRecord) {
this.arbitrateRecord.id = this.form.arbitrateRecord.id;
}
this.evidenceFile(this.form);
// }, 1000);
}
},
},
},
methods: {
// 申请人裁决书
evidenceFile(val) {
if (val) {
this.applicantFileArr = [];
this.applicantPathArr = [];
this.respondentFileArr = [];
this.respondenPathArr = [];
this.awardFileArr = [];
this.awardPathArr = [];
this.bookFileArr = [];
this.bookPathArr = [];
val.caseAttachList.forEach((item) => {
if (item.annexType == 2) {
this.applicantFileArr.push(item.annexName);
this.applicantPathArr.push(item.annexPath);
} else if (item.annexType == 6) {
this.respondentFileArr.push(item.annexName);
this.respondenPathArr.push(item.annexPath);
} else if (item.annexType == 3) {
this.awardFileArr.push(item.annexName);
this.awardPathArr.push(item.annexPath);
} else if (item.annexType == 7) {
this.bookFileArr.push(item.annexName);
this.bookPathArr.push(item.annexPath);
}
});
}
},
// 预览文件
toFile(index, val) {
let headPath = window.location.origin + "/API";
if (val == 2) {
window.open(headPath + this.applicantPathArr[index], "_blank");
} else if (val == 6) {
window.open(headPath + this.respondenPathArr[index], "_blank");
} else if (val == 3) {
window.open(headPath + this.awardPathArr[index], "_blank");
} else if (val == 7) {
window.open(headPath + this.bookPathArr[index], "_blank");
}
},
// 校验裁决书
verificationArbitrateRecordFn(parms) {
this.buttonFlag = true;
verificationArbitrateRecord(parms).then((res) => {
this.cancel();
this.buttonFlag = false;
// this.$emit("updataList");
this.$emit("getcaseApply", this.queryParams);
// this.$message("成功");
this.$modal.msgSuccess("提交成功");
});
},
//审核裁决书
checkArbitrateRecordFn(parms) {
this.buttonFlag = true;
checkArbitrateRecord(parms).then((res) => {
this.cancel();
this.buttonFlag = false;
// this.$emit("updataList");
this.$emit("getcaseApply", this.queryParams);
// this.$message("成功");
this.$modal.msgSuccess("提交成功");
});
},
// 仲裁员审核裁决书
arbitratorCheckArbitrateRecordFn(parms) {
this.buttonFlag = true;
console.log(parms)
arbitratorCheckArbitrateRecord(parms).then((res) => {
this.cancel();
this.buttonFlag = false;
// this.$emit("updataList");
this.$emit("getcaseApply", this.queryParams);
// this.$message("成功");
this.$modal.msgSuccess("提交成功");
});
},
// 签名
adjudicationSignatureFn(parms) {
this.buttonFlag = true;
adjudicationSignature(parms).then((res) => {
this.cancel();
this.buttonFlag = false;
// this.$emit("updataList");
this.$emit("getcaseApply", this.queryParams);
this.$message("成功");
})
},
// 上传裁决书
UploadUrls() {
return window.location.origin + "/API/evidence/uploadRecord";
},
beforeRemoves(file,fileList){
return this.$confirm(`确定移除 ${file.name}?`);
},
beforeUpload(flie, fileList) {
// this.fileList = fileList;
},
// 上传文件成功
handlSuccessAw(res, file) {
// this.fileListAw.push(file);
},
beforeAvatarUploads(){
this.filedatas.id = this.awardDetailform.id;
},
submitForm(parms) {
let that = this;
this.$refs["form"].validate((valid) => {
if (valid) {
if (parms == 0) {
this.verificationArbitrateRecordFn({
id: this.form.id,
arbitrateRecord: this.arbitrateRecord,
});
} else if (parms == 1) {
if(this.agreeOrNotCheck==1){
//部门长同意
this.checkArbitrateRecordFn({
id: this.form.id,
agreeOrNotCheck: 1,
arbitrateRecord: this.arbitrateRecord,
});
}else if(this.agreeOrNotCheck==2){
// 部门长驳回
this.checkArbitrateRecordFn({
id: this.form.id,
agreeOrNotCheck: 2,
arbitrateRecord: this.arbitrateRecord,
});
}
} else if (parms == 2) {
} else if (parms == 3) {
this.adjudicationSignatureFn({
id: this.form.id,
});
}else if (parms == 6) {
if(this.agreeOrNotCheck==1){
//仲裁员同意
this.arbitratorCheckArbitrateRecordFn({
id: this.form.id,
agreeOrNotCheck: 1,
arbitrateRecord: this.arbitrateRecord,
});
}else if(this.agreeOrNotCheck==2){
//仲裁员驳回
this.arbitratorCheckArbitrateRecordFn({
id: this.form.id,
agreeOrNotCheck: 2,
arbitrateRecord: this.arbitrateRecord,
});
}
}
}
});
},
cancel() {
this.$emit("cancelpaymentdetailsCom");
},
},
};
</script>
<style lang="scss" scoped>
::v-deep .el-dialog {
border-radius: 30px;
}
.esign {
border: 1px solid;
}
a {
color: blue;
}
</style>
@@ -0,0 +1,154 @@
<template>
<!-- 送达裁决书页面 -->
<div>
<el-dialog
title="是否确认发送裁决书"
:visible="openMailawardDialog"
@close="cancel"
:destroy-on-close="true"
center
>
<el-form ref="form" :model="formData" label-width="150px">
<el-col :span="24">
<el-form-item
label="申请人电子邮件:"
prop="appEmail"
:rules="[
{
required: true,
message: '邮箱地址不能为空',
trigger: 'blur',
},
{
pattern:
/^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/,
message: '请输入正确的邮箱地址',
trigger: 'blur',
},
]"
>
<el-input
v-model="formData.appEmail"
placeholder="请输入电子邮件"
disabled
/>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item
label="被申请人电子邮件:"
prop="resEmail"
:rules="[
{
required: true,
message: '邮箱地址不能为空',
trigger: 'blur',
},
{
pattern:
/^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/,
message: '请输入正确的邮箱地址',
trigger: 'blur',
},
]"
>
<el-input
v-model="formData.resEmail"
placeholder="请输入电子邮件"
disabled
/>
</el-form-item>
</el-col>
<!-- <el-col :span="24">
<el-form-item
label="申请人快递单号:"
prop="apptrackingNum"
>
<el-input
v-model="formData.apptrackingNum"
placeholder="请输入快递单号"
/>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item
label="被申请人快递单号:"
prop="restrackingNum"
>
<el-input
v-model="formData.restrackingNum"
placeholder="请输入快递单号"
/>
</el-form-item>
</el-col> -->
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm" :loading="loadingSubmit">确 定</el-button>
<el-button type="" @click="cancel">取 消</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { adjudicationDelivery, adjudicationService } from "@/api/awardManagement/awardManagement";
export default {
props: ["openMailawardDialog", "mailawardata", "emailobj","queryParams"],
data() {
return {
formData: this.emailobj,
loadingSubmit: false,
};
},
watch: {
emailobj: {
handler(val) {
if (val) {
this.formData = this.emailobj
}
},
},
},
methods: {
submitForm() {
// adjudicationDelivery
this.$refs["form"].validate((valid) => {
if (valid) {
this.loadingSubmit = true;
// adjudicationDelivery({
delete this.formData.id
delete this.formData.apptrackingNum
delete this.formData.restrackingNum
adjudicationService({
id: this.mailawardata.id,
...this.formData,
})
.then((res) => {
if (res.code == 200) {
this.$modal.msgSuccess("提交成功");
// this.$emit("updataList");
this.$emit("getcaseApply", this.queryParams);
this.cancel();
this.loadingSubmit = false;
}
})
.catch((err) => {
this.loadingSubmit = false;
});
}
});
},
cancel() {
this.$emit("closeMailaward");
},
},
};
</script>
<style lang="scss" scoped>
::v-deep .el-dialog {
width: 550px;
background: #ffffff;
border-radius: 20px;
}
</style>
@@ -1,6 +1,6 @@
<template>
<div>
<el-dialog :title="operateTitle" :visible="operateVisable" @close="cancel" center :distroy-on-close="true">
<el-dialog :title="operateTitle" width="65%" :visible="operateVisable" @close="cancel" center :distroy-on-close="true">
<el-dialog width="40%" title="缴费详情" :visible.sync="payVisible" append-to-body>
<!-- 案件总金额 -->
<h3>案件总金额:{{ form.totalFee / 100 }}</h3>
@@ -66,7 +66,7 @@
}}</span>
</template>
</el-table-column>
<el-table-column label="案件编号" align="center" prop="caseNum" :show-overflow-tooltip="true" />
<el-table-column label="案件编号" width="180" align="center" prop="caseNum" :show-overflow-tooltip="true" />
<el-table-column label="申请人(机构)" align="center" prop="applicantName" :show-overflow-tooltip="true" />
<el-table-column label="案件标的" align="center" prop="caseSubjectAmount" />
<el-table-column label="仲裁方式" align="center" prop="arbitratMethodName" :show-overflow-tooltip="true" />
@@ -23,9 +23,12 @@
{{ form.caseStatusName }}
</el-tag>
</el-descriptions-item>
<el-descriptions-item label="申请人仲裁诉求">{{
<!-- <el-descriptions-item label="申请人仲裁诉求">{{
form.arbitratClaims
}}</el-descriptions-item>
}}</el-descriptions-item> -->
<!-- <el-descriptions-item label="案件理由">{{
form.facts
}}</el-descriptions-item> -->
</el-descriptions>
<div class="paySelectType">
<el-radio-group v-model="paySelect" @input="changPayType">
@@ -54,9 +57,13 @@
<div id="qrcodeImg"></div>
</div>
<div class="payTitle">{{ payMain }}</div>
<div v-if="form.payRejectReason">
<span>驳回原因:</span>
<div style="width:95%;">{{ form.payRejectReason }}</div>
</div>
<div slot="footer" class="dialog-footer">
<el-button @click="payCancel" class="endbutton"><span>取 消</span></el-button>
<el-button @click="submitUpload" class="endbutton"><span>确认缴费</span></el-button>
<el-button @click="submitUpload" class="endbutton" :loading="loadingSubmit"><span>确认缴费</span></el-button>
</div>
</el-dialog>
</div>
@@ -75,6 +82,7 @@ export default {
payMain: "",
timer: null,
paySelect: 1,//支付线上/线下
loadingSubmit: false,
fileList: [],
headers: {
Authorization: "Bearer " + getToken(),
@@ -116,11 +124,15 @@ export default {
this.$modal.msgError("请上传缴费凭证");
return
}
this.loadingSubmit = true;
confirmPayDig(this.submitForm).then(res=>{
this.$modal.msgSuccess("成功");
this.payCancel()
this.$emit("getcaseApply", this.queryParams);
})
this.loadingSubmit = false;
}).catch((err) => {
this.loadingSubmit = false;
});
},
handleRemove(file, fileList) {
(this.submitForm.payOrderList = []),
@@ -0,0 +1,164 @@
<template>
<div>
<el-dialog :title="title" :visible="openDialog" @close="cancel" :destroy-on-close="true" center>
<el-form ref="form" :model="form" label-width="120px">
<el-form-item label="案件编号:" prop="caseNum">
<el-input v-model="form.caseNum" placeholder="" :disabled="true" />
</el-form-item>
<el-form-item label="案件标的:" prop="caseSubjectAmount">
<el-input v-model="form.caseSubjectAmount" :disabled="true" />
</el-form-item>
<el-form-item label="缴费人:" prop="applicantName">
<el-input v-model="form.applicantName" placeholder="" :disabled="true" />
</el-form-item>
<el-form-item label="缴费金额:" prop="feePayable">
<el-input v-model="form.feePayable" :disabled="true" />
</el-form-item>
<!-- <el-form-item label="缴费截图:" prop="respondent">
<el-input v-model="form.Respondent" placeholder="" />
</el-form-item> -->
<el-form-item label="案件状态:" prop="caseStatusName">
<!-- <el-input v-model="form.caseStatusName" placeholder="" /> -->
<el-tag>{{ form.caseStatusName }}</el-tag>
</el-form-item>
<!-- <el-form-item label="支付状态:" prop="paymentStatusName">
<el-tag effect="dark" type="success">
{{ form.paymentStatusName }}
</el-tag>
</el-form-item> -->
<el-form-item label="缴费凭证:" prop="caseStatusName">
<div style="color: #104fad; cursor: pointer" v-for="(item, index) in form.caseAttachList" :key="index"
@click="preview(item.annexPath)">
<span v-if="item.annexType == 8">{{ item.annexName }}</span>
</div>
<!-- <el-tag>{{ form.caseStatusName }}</el-tag> -->
</el-form-item>
<!-- 判断缴费是否通过 -->
<el-form-item label="是否缴费通过:" v-if="flag == 0">
<el-radio-group v-model="agreeOrNotCheck">
<el-radio :label="1">同意</el-radio>
<el-radio :label="0">拒绝</el-radio>
</el-radio-group>
</el-form-item>
<!-- 缴费驳回原因-->
<el-form-item label="拒绝原因:" v-if="agreeOrNotCheck == 0" prop="caseCheckReject" :rules="[
{ required: true, message: '请输入驳回原因', trigger: 'blur' },
]">
<el-input type="textarea" :rows="2" placeholder="请输入驳回原因" v-model="form.caseCheckReject"></el-input>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm" v-if="flag == 0" class="endbutton"
:loading="loadingSubmit">确认已缴费</el-button>
<el-button @click="cancel" class="endbutton1">取 消</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { confirmPay } from "@/api/pay/pay";
export default {
props: ["openDialog", "title", "flag", "detailform", "queryParams", "getcaseApply"],
data() {
return {
// key: value
form: {},
srcList: [],
agreeOrNotCheck: 1,
loadingSubmit: false,
};
},
watch: {
detailform: {
handler(val) {
if (val) {
this.form = val;
console.log(val)
}
},
},
openDialog: {
handler(val) {
if (val) {
this.agreeOrNotCheck = 1;
}
},
},
},
methods: {
preview(data) {
window.open(window.location.origin + "/API" + data, "_blank");
},
// 确认缴费
submitForm() {
let paramsVal = {
ids: [this.form.id],
agreeOrNotCheck: this.agreeOrNotCheck,
caseCheckReject: this.form.caseCheckReject
}
this.$refs["form"].validate((valid) => {
if (valid) {
this.loadingSubmit = true;
confirmPay(paramsVal).then((res) => {
this.$message({
message: "确认成功",
type: "success",
});
this.loadingSubmit = false;
this.$emit("getcaseApply", this.queryParams);
}).catch((err) => {
this.loadingSubmit = false;
});
this.cancel();
}
});
},
cancel() {
this.$emit("cancelpaymentdetails");
},
},
};
</script>
<style lang="scss" scoped>
::v-deep .el-dialog {
width: 50%;
background: #ffffff;
border-radius: 20px;
}
.endbutton {
width: 124px;
height: 37px;
background: #0072ff;
border-radius: 19px;
span {
width: 32px;
height: 15px;
font-size: 16px;
font-family: Microsoft YaHei;
font-weight: 400;
color: #ffffff;
// line-height: 48px;
}
}
.endbutton1 {
width: 124px;
height: 37px;
background: #ffffff;
border: 1px solid #d0d0d0;
border-radius: 19px;
span {
width: 31px;
height: 13px;
font-size: 16px;
font-family: Microsoft YaHei;
font-weight: 400;
color: #959595;
}
}
</style>
@@ -1,115 +1,147 @@
<template>
<div>
<el-dialog title="修改开庭时间" :visible="timeVisable" @close="cancel" center :distroy-on-close="true">
<el-descriptions title="案件内容" :column="2" border>
<el-descriptions-item label="案件编号">{{ timeData.caseNum }}</el-descriptions-item>
<el-descriptions-item label="申请人(机构)">{{ timeData.applicantName }}</el-descriptions-item>
<el-descriptions-item label="案件标的">{{ timeData.caseSubjectAmount }}</el-descriptions-item>
<el-descriptions-item label="案件状态">
<el-tag size="small">{{ timeData.caseStatusName }}</el-tag>
</el-descriptions-item>
<el-descriptions-item label="仲裁方式">{{ timeData.arbitratMethodName }}</el-descriptions-item>
<el-descriptions-item label="开庭时间">
<el-date-picker v-model="loanStartDate" :picker-options="pickerOptions" type="datetime"
placeholder="开庭时间">
</el-date-picker>
</el-descriptions-item>
</el-descriptions>
<div slot="footer" class="dialog-footer">
<el-button @click="cancel" class="endbutton1"><span>取 消</span></el-button>
<el-button @click="submitTime" class="endbutton1"><span>提 交</span></el-button>
</div>
</el-dialog>
</div>
<div>
<el-dialog
title="修改开庭时间"
:visible="timeVisable"
@close="cancel"
center
:distroy-on-close="true"
>
<el-descriptions title="案件内容" :column="2" border>
<el-descriptions-item label="案件编号">{{
timeData.caseNum
}}</el-descriptions-item>
<el-descriptions-item label="申请人(机构)">{{
timeData.applicantName
}}</el-descriptions-item>
<el-descriptions-item label="案件标的">{{
timeData.caseSubjectAmount
}}</el-descriptions-item>
<el-descriptions-item label="案件状态">
<el-tag size="small">{{ timeData.caseStatusName }}</el-tag>
</el-descriptions-item>
<el-descriptions-item label="仲裁方式">{{
timeData.arbitratMethodName
}}</el-descriptions-item>
<el-descriptions-item label="开庭时间">
<el-date-picker
v-model="loanStartDate"
:picker-options="pickerOptions"
type="datetime"
placeholder="开庭时间"
>
</el-date-picker>
</el-descriptions-item>
</el-descriptions>
<div slot="footer" class="dialog-footer">
<el-button @click="cancel" class="endbutton1"
><span>取 消</span></el-button
>
<el-button @click="submitTime" class="endbutton1" :loading="loadingSubmit"
><span>提 交</span></el-button
>
</div>
</el-dialog>
</div>
</template>
<!-- hearDate -->
<script>
import { updateHeardate } from '@/api/caseManagement/caseManagement'
import { updateHeardate } from "@/api/caseManagement/caseManagement";
import { getToken } from "@/utils/auth";
import { createRoomId, reservedConference, sendRoomNoMessage } from '@/api/meeting/index'
import {
createRoomId,
reservedConference,
sendRoomNoMessage,
} from "@/api/meeting/index";
import moment from "moment";
export default {
props: ["timeVisable", "timeData", "queryParams"],
data() {
return {
loanStartDate: "",
pickerOptions: {
disabledDate(time) {
return time.getTime() < Date.now() - 8.64e7;
}
},
roomId: null
};
props: ["timeVisable", "timeData", "queryParams"],
data() {
return {
loanStartDate: "",
loadingSubmit: false,
pickerOptions: {
disabledDate(time) {
return time.getTime() <= Date.now() - 1 * 24 * 3600 * 1000; // 禁用超过当前时间的日期
},
selectableRange: `${new Date()}- 23:59:59`, //这
},
roomId: null,
};
},
watch: {
timeVisable(val) {
if (val) {
// this.getEvidenceList({ caseAppliId: this.timeData.id, annexTypeList: "2" })
this.loanStartDate = this.timeData.hearDate;
}
},
watch: {
timeVisable(val) {
if (val) {
// this.getEvidenceList({ caseAppliId: this.timeData.id, annexTypeList: "2" })
this.loanStartDate = this.timeData.hearDate
}
}
},
created() {},
methods: {
cancel() {
this.$emit("cancelTime");
},
created() {
// 获取房间号
async createRoomIdFn(data) {
await createRoomId(data).then((res) => {
this.roomId = res.data;
});
},
methods: {
cancel() {
this.$emit("cancelTime");
},
// 获取房间号
async createRoomIdFn(data) {
await createRoomId(data).then(res => {
this.roomId = res.data;
})
},
// 预约会议
async reservedConferenceFn(data) {
await reservedConference(data).then(res => {
console.log(res, "PPPPPPPPPPPPPPPPPPPPPPPPP");
})
},
// 提交时间
async updateHeardateFn(data) {
await updateHeardate(data).then(res => {
this.$modal.msgSuccess("修改成功");
this.cancel();
this.$emit("getcaseApply", this.queryParams);
})
},
// 发送房间号短信
async sendRoomNoMessageFn(data) {
sendRoomNoMessage(data).then(res => {
console.log(res, "PPPPPPPPPPPPPPPPPPPPPPPPP");
})
},
async submitTime() {
this.loanStartDate = moment(
this.loanStartDate
).format("YYYY-MM-DD HH:mm:ss");
await this.createRoomIdFn({ caseId: this.timeData.id });
await this.reservedConferenceFn({
caseId: this.timeData.id,
roomId: this.roomId,
scheduleStartTime: this.loanStartDate,
})
await this.updateHeardateFn({
id: this.timeData.id,
hearDate: this.loanStartDate
})
await sendRoomNoMessageFn({
id: this.timeData.id,
roomNo: this.roomId,
scheduleStartTime: this.loanStartDate
})
}
// 预约会议
async reservedConferenceFn(data) {
await reservedConference(data).then((res) => {
console.log(res, "PPPPPPPPPPPPPPPPPPPPPPPPP");
});
},
// 提交时间
async updateHeardateFn(data) {
await updateHeardate(data).then((res) => {
this.$modal.msgSuccess("修改成功");
this.cancel();
this.$emit("getcaseApply", this.queryParams);
this.loadingSubmit = false;
}).catch((err) => {
this.loadingSubmit = false;
});;
},
// 发送房间号短信
async sendRoomNoMessageFn(data) {
sendRoomNoMessage(data).then((res) => {});
},
async submitTime() {
if (!this.loanStartDate) {
this.$message.error("请您选择开庭时间");
return;
} else {
this.loadingSubmit = true;
this.loanStartDate = moment(this.loanStartDate).format(
"YYYY-MM-DD HH:mm:ss"
);
await this.createRoomIdFn({ caseId: this.timeData.id });
await this.reservedConferenceFn({
caseId: this.timeData.id,
roomId: this.roomId,
scheduleStartTime: this.loanStartDate,
});
await this.updateHeardateFn({
id: this.timeData.id,
hearDate: this.loanStartDate,
});
await this.sendRoomNoMessageFn({
id: this.timeData.id,
roomNo: this.roomId,
scheduleStartTime: this.loanStartDate,
});
}
},
},
};
</script>
<style lang="scss" scoped>
.steps {
display: flex;
flex-wrap: wrap;
display: flex;
flex-wrap: wrap;
}
</style>
@@ -12,12 +12,12 @@
</el-col>
<el-col :span="12">
<el-form-item label="申请人:" prop="applicantName">
<el-input v-model="adjudicatename.applicantName" :disabled="true" />
<el-input v-model="formData.applicantName" :disabled="true" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="被申请人:" prop="respondentName">
<el-input v-model="adjudicatename.respondentName" :disabled="true" />
<el-input v-model="formData.respondentName" :disabled="true" />
</el-form-item>
</el-col>
<el-col :span="12">
@@ -47,7 +47,7 @@
</el-col> -->
<el-col :span="12">
<el-form-item label="仲裁费用:" prop="feePayable">
<el-input v-model="adjudicatename.feePayable" placeholder="请输入仲裁费用" :disabled="true" />
<el-input v-model="formData.feePayable" placeholder="请输入仲裁费用" :disabled="true" />
</el-form-item>
</el-col>
<el-col :span="12">
@@ -67,13 +67,13 @@
</el-col>
<el-col :span="12">
<el-form-item label="仲裁员:" prop="arbitratorName">
<el-input v-model="adjudicatename.arbitratorName" placeholder="请输入" :disabled="true" />
<el-input v-model="formData.arbitratorName" placeholder="请输入" :disabled="true" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="开庭日期:" prop="hearDate">
<el-date-picker v-model="adjudicatename.hearDate" type="datetime" placeholder="开庭日期" :disabled="true">
<el-date-picker v-model="formData.hearDate" type="datetime" placeholder="开庭日期" :disabled="true">
</el-date-picker>
</el-form-item>
</el-col>
@@ -103,6 +103,16 @@
</div>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="裁决书:">
<div v-if="awardArr.length == 0">裁决书暂未提供!</div>
<div v-for="(item, index) in awardArr" :key="index">
<a href="#" @click="awardToFile(item.onlyOfficeFileId)" style="color: blue">
{{ item.annexName }}
</a>
</div>
</el-form-item>
</el-col>
<el-col :span="24" v-if="recordArr.length > 0">
<el-form-item label="庭审笔录:">
<div v-for="(item, index) in recordArr" :key="index" style="color: blue">
@@ -120,24 +130,65 @@
<div>{{ startTime }}</div>
</el-form-item>
</el-col>
<el-col :span="24" v-if="submitFlag">
<el-form-item label="上传裁决书:">
<el-upload class="upload-demo" accept=".doc,.docx" ref="upload" :action="UploadUrls()" :headers="headers"
:data="filedatas" :before-remove="beforeRemoves" :limit="2" :on-change="beforeUpload"
:on-success="handlSuccessAw" :file-list="fileListAw" :before-upload="beforeAvatarUploads">
<el-button slot="trigger" size="small" type="primary">选取文件</el-button>
<!-- <el-button style="margin-left: 10px;" size="small" type="success" @click="submitUpload">上传到服务器</el-button> -->
<div slot="tip" class="el-upload__tip">
只能上传.doc,docx文件
</div>
</el-upload>
</el-form-item>
</el-col>
<el-col :span="24" v-if="submitFlag">
<el-form-item label="上传庭审笔录:">
<el-upload class="upload-demo" ref="fileupload" accept=".doc,.docx" :action="UploadUrlsT()"
:on-success="handlSuccess" :on-remove="handleRemove" :on-preview="handlePreview"
:before-remove="beforeRemove" :headers="headers" :data="filedata" multiple :limit="3"
:on-exceed="handleExceed" :before-upload="beforeAvatarUpload" :file-list="fileList">
<el-button type="primary" size="small">选择文件</el-button>
<div slot="tip" class="el-upload__tip">
文件支持上传.doc,docx文件
</div>
</el-upload>
</el-form-item>
</el-col>
<!-- </el-form> -->
</el-form>
<el-button @click="openmeeting" type="primary">发起会议</el-button>
<el-button @click="openArbitrationresults" type="primary" v-if="this.recordArr.length <= 0">生成庭审笔录</el-button>
<el-button @click="openArbitrationresults" type="primary"
v-if="this.awardArr.length <= 0 && submitFlag">确认会议结果</el-button>
<div slot="footer" class="dialog-footer">
<el-button class="endbutton" :disabled="showsubmit && recordArr.length == 0" @click="submitResults">提交</el-button>
<el-button class="endbutton" :disabled="(showsubmit && recordArr.length == 0) || form2.isAbsence == 1
" @click="submitResults" :loading="loadingSub" v-if="submitFlag">提交</el-button>
<el-button @click="cancel" class="endbutton1"><span>关 闭</span></el-button>
</div>
</el-dialog>
<!-- <el-dialog title="庭审笔录" :visible="showArbitrationresults" @close="closeArbitrationresults" center>
<el-dialog title="庭审笔录" :visible="showArbitrationresults" @close="closeArbitrationresults" center>
<el-form ref="form2" :model="form2" label-width="150px">
<el-col :span="24">
<el-form-item label="被申请人是否缺席:" prop="appliIsAbsen" :rules="[
<!-- <el-col :span="12">
<el-form-item label="申请人是否缺席:" prop="isAbsence" :rules="[
{
required: true,
message: '请输入',
},
]">
<el-radio-group v-model="form2.isAbsence">
<el-radio :label="1">是</el-radio>
<el-radio :label="0">否</el-radio>
</el-radio-group>
</el-form-item>
</el-col> -->
<el-col :span="24">
<el-form-item label="被申请人是否缺席:" prop="appliIsAbsen" :rules="[
{
required: true,
message: '请输入',
},
]">
<el-radio-group v-model="form2.appliIsAbsen">
<el-radio :label="1">是</el-radio>
<el-radio :label="0">否</el-radio>
@@ -145,60 +196,218 @@
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="笔录内容:" prop="responCrossOpin">
<el-input type="textarea" :autosize="{ minRows: 6 }" v-model="form2.responCrossOpin" placeholder="请输入" />
<el-form-item label="申请人是否缺席:" prop="isAbsence" :rules="[
{
required: true,
message: '请输入',
},
]">
<el-radio-group v-model="form2.isAbsence">
<el-radio :label="1">是</el-radio>
<el-radio :label="0">否</el-radio>
</el-radio-group>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="被申请人对上述材料的质证意见" prop="respondentOpinion">
<el-input type="textarea" :autosize="{ minRows: 6 }" v-model="form2.respondentOpinion" placeholder="请输入" />
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="申请人对上述材料的质证意见" prop="applicantOpinion">
<el-input type="textarea" :autosize="{ minRows: 6 }" v-model="form2.applicantOpinion" placeholder="请输入" />
</el-form-item>
</el-col>
<!-- <el-col :span="24">
<el-form-item label="查明本案事实" prop="caseFacts">
<el-input type="textarea" :autosize="{ minRows: 6 }" v-model="form2.caseFacts" placeholder="请输入" />
</el-form-item>
</el-col> -->
<!-- <el-col :span="24">
<el-form-item label="本案争议焦点" prop="caseFocus">
<el-input type="textarea" :autosize="{ minRows: 6 }" v-model="form2.caseFocus" placeholder="请输入" />
</el-form-item>
</el-col> -->
<!-- <el-col :span="12">
<el-form-item label="被申请人质证意见:" prop="responCrossOpin" :rules="[
{
required: true,
message: '请输入',
trigger: 'blur',
},
]">
<el-input type="textarea" v-model="form2.responCrossOpin" placeholder="请输入" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="申请人质证意见:" prop="applicaCrossOpin" :rules="[
{
required: true,
message: '请输入',
trigger: 'blur',
},
]">
<el-input type="textarea" v-model="form2.applicaCrossOpin" placeholder="请输入" />
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="被申请人的答辩意见:" prop="responDefenOpini" :rules="[
{
required: true,
message: '请输入',
trigger: 'blur',
},
]">
<el-input type="textarea" v-model="form2.responDefenOpini" placeholder="请输入" />
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="经庭审质证,对各方提供的证据认定如下:" prop="evidenDetermi" :rules="[
{
required: true,
message: '请输入',
trigger: 'blur',
},
]">
<el-input type="textarea" :autosize="{ minRows: 4 }" placeholder="请输入" v-model="form2.evidenDetermi">
</el-input>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="仲裁庭经审理查明(写明仲裁庭认定的事实):" prop="factDetermi" :rules="[
{
required: true,
message: '请输入',
trigger: 'blur',
},
]">
<el-input type="textarea" :autosize="{ minRows: 4 }" placeholder="请输入" v-model="form2.factDetermi">
</el-input>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="综上所述:" prop="caseSketch" :rules="[
{
required: true,
message: '请输入',
trigger: 'blur',
},
]">
<el-input type="textarea" autosize placeholder="请输入" v-model="form2.caseSketch">
</el-input>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="本庭认为:" prop="arbitrateThink" :rules="[
{
required: true,
message: '请输入',
trigger: 'blur',
},
]">
<el-input type="textarea" autosize placeholder="请输入" v-model="form2.arbitrateThink">
</el-input>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="裁决如下:" prop="rulingFollows" :rules="[
{
required: true,
message: '请输入',
trigger: 'blur',
},
]">
<el-input type="textarea" autosize placeholder="请输入" v-model="form2.rulingFollows">
</el-input>
</el-form-item>
</el-col> -->
</el-form>
<div slot="footer" class="dialog-footer">
<el-button @click="submitForm" class="endbutton">
<el-button @click="submitForm" class="endbutton" :loading="loadingSubmit">
<span>确定</span></el-button>
<el-button @click="closeArbitrationresults" class="endbutton1"><span>取 消</span></el-button>
</div>
</el-dialog> -->
</el-dialog>
</div>
</template>
<script>
import { getToken } from "@/utils/auth";
import { getUserProfile } from "@/api/system/user";
import { selectCaseApply } from "@/api/caseAccess/caseEntry";
import {
writtenHear,
creatTrialRecord,
creatTrialRecordnew,
document,
attachListByCaseId
changeCaseStatus,
secretaryRoleByUserId
} from "@/api/caseManagement/caseManagement.js";
import { reserveConferenceList } from '@/api/meeting/index.js'
import { reserveConferenceList } from "@/api/meeting/index.js";
export default {
props: ["showtrialincourt", "adjudicatename", "form", "queryParams"],
data() {
return {
submitFlag: false,
formData: {},
headers: {
Authorization: "Bearer " + getToken(),
},
filedata: {
annexType: 7,
id: null,
},
filedatas: {
annexType: 3,
officeFlag: 1,
caseId: null
},
upLife: "",
user: "",
userId:1,
form2: {},
userId: 1,
showArbitrationresults: false,
form2: {
isAbsence: 0,
appliIsAbsen: 0,
},
applicateArr: [], //申请人案件资料
quiltArr: [], //被申请人案件资料
awardArr: [], //裁决书案件资料
recordArr: [], //笔录附件
showsubmit: true, //生成庭审笔录,方可提交
annexName: "", //笔录文件名
annexPath: "", //笔录文件地址
roomId:null,
startTime:""
roomId: null,
startTime: "",
fileList: [],
fileListAw: [],
loadingSubmit: false,
loadingSub: false,
};
},
watch: {
showtrialincourt: {
handler(val) {
if (val) {
this.reserveConferenceListFn({caseId:this.form.id});
let val = {
id: this.form.id,
version: this.form.version,
};
selectCaseApply(val).then(res => {
this.formData = res.data;
})
this.reserveConferenceListFn({ caseId: this.form.id });
this.getUser();
this.formData = this.form;
// this.formData = this.form;
console.log(this.formData);
this.applicateArr = [];
this.quiltArr = [];
this.awardArr = [];
this.recordArr = [];
setTimeout(() => {
if (this.adjudicatename.caseAttachList.length > 0) {
this.adjudicatename.caseAttachList.forEach((item) => {
console.log(this.formData);
if (this.formData.caseAttachList.length > 0) {
this.formData.caseAttachList.forEach((item) => {
// 申请人案件附件
if (item.annexType == 2) {
this.applicateArr.push({
@@ -220,6 +429,10 @@ export default {
annexPath: item.annexPath,
});
}
//裁决书附件
if (item.annexType == 3) {
this.awardArr.push(item);
}
});
}
}, 1000);
@@ -227,16 +440,20 @@ export default {
},
},
},
created() {
},
created() { },
methods: {
// 根据案件id和用户id查询当前登陆人是否为仲裁员
secretaryRoleByUserIdFn(data) {
secretaryRoleByUserId(data).then(res => {
this.submitFlag = res.data.isSecretaryRole;
})
},
// 根据案件id查询会议号
reserveConferenceListFn(data){
reserveConferenceList(data).then(res=>{
reserveConferenceListFn(data) {
reserveConferenceList(data).then((res) => {
this.roomId = res.data[0].roomId;
this.startTime = res.data[0].scheduleStartTime;
})
});
},
// 详情显示,展示申请人案件文件
toFile(item, index) {
@@ -252,6 +469,18 @@ export default {
"_black"
);
},
//裁决书文件
awardToFile(item) {
// window.open(
// window.location.origin + "/API" + this.awardArr[index].annexPath,
// "_black"
// );
if (this.checkPermi(['caseManagement:list:editOffice'])) {
this.$router.push({ path: '/onlyoffice', query: { id: item, flag: 1 } })
} else {
this.$router.push({ path: '/onlyoffice', query: { id: item, flag: 0 } })
}
},
// 庭审笔录附件
toFile2(item, index) {
window.open(
@@ -262,85 +491,169 @@ export default {
getUser() {
getUserProfile().then((response) => {
this.user = response.data.userName;
this.userId = response.data.userId;
this.userId = response.data.userId;
this.secretaryRoleByUserIdFn({ caseId: this.form.id, userId: this.userId })
});
},
// 打开会议
openmeeting() {
window.open(
// `http://localhost:8081/#/home?name=${this.user}&id=${this.formData.id}&userId=${this.userId}`
`https://txroom.xayunmei.com/#/home?name=${this.user}&id=${this.formData.id}&userId=${this.userId}&roomId=${this.roomId}`
// `https://txroom.xayunmei.com/#/home?name=${this.user}&id=${this.formData.id}&userId=${this.userId}&roomId=${this.roomId}`
`https://txroom.xayunmei.com/#/home?name=${this.user}&id=${this.formData.id}&userId=${this.userId}&roomId=${this.roomId}&type=zhongcai&token=${getToken()}`
);
},
// 生成庭申笔录
// 提交仲裁结果
openArbitrationresults() {
attachListByCaseId({
caseAppliId:this.formData.id,
annexType:7
}).then(res=>{
console.log(res,"llllllll");
if(res.data.length == 0){
this.$modal.msgSuccess("请先进行会议");
}else{
this.recordArr = res.data;
this.$modal.msgSuccess("生成成功");
}
})
this.showArbitrationresults = true;
},
closeArbitrationresults() {
this.showArbitrationresults = false;
},
// closeArbitrationresults() {
// this.showArbitrationresults = false;
// },
// 提交庭审笔录弹框结果
// submitForm() {
// this.$refs["form2"].validate((valid) => {
// if (valid) {
// creatTrialRecord({
// caseAppliId: this.formData.id,
// evidenDetermi: this.form2.evidenDetermi,
// factDetermi: this.form2.factDetermi,
// caseSketch: this.form2.caseSketch,
// arbitrateThink: this.form2.arbitrateThink,
// rulingFollows: this.form2.rulingFollows,
// isAbsence: this.form2.isAbsence,
// appliIsAbsen: this.form2.appliIsAbsen,
// responCrossOpin: this.form2.responCrossOpin,
// applicaCrossOpin: this.form2.applicaCrossOpin,
// responDefenOpini: this.form2.responDefenOpini,
// })
// .then((res) => {
// res.data.caseAttachList.forEach((item) => {
// if (item.annexType == 7) {
// this.recordArr.push({
// annexName: item.annexName,
// annexPath: item.annexPath,
// });
// }
// });
// this.$modal.msgSuccess("提交成功");
// this.showsubmit = false;
// this.closeArbitrationresults();
// })
// .catch((err) => { });
// }
// });
// },
submitForm() {
this.$refs["form2"].validate((valid) => {
if (valid) {
this.loadingSubmit = true;
creatTrialRecordnew({
caseAppliId: this.formData.id,
isAbsence: this.form2.isAbsence,
appliIsAbsen: this.form2.appliIsAbsen,
respondentOpinion: this.form2.respondentOpinion,
applicantOpinion: this.form2.applicantOpinion,
})
.then((res) => {
this.$modal.msgSuccess("提交成功");
this.showsubmit = false;
this.closeArbitrationresults();
console.log(this.form2);
this.form2.respondentOpinion = "";
this.form2.applicantOpinion = "";
this.loadingSubmit = false;
let val = {
id: this.form.id,
version: this.form.version,
};
this.awardArr = [];
selectCaseApply(val).then((res) => {
this.formData.caseAttachList = res.data.caseAttachList;
this.formData.caseAttachList.forEach(item => {
if (item.annexType == 3) {
this.awardArr.push(item);
}
})
});
})
.catch((err) => {
this.loadingSubmit = false;
});
}
});
},
cancel() {
this.$emit("canceltrialincourt");
},
// 提交开庭审理结果
submitResults() {
console.log(this.formData.id, "this.formData.id");
let id = this.formData.id;
document({
id: id,
}).then((res) => {
console.log(res, "提交开庭审理结果");
if (res.code == 200) {
this.$emit("getcaseApply", this.queryParams);
this.cancel();
}
if (this.fileList.length == 0 && this.recordArr.length == 0) {
this.$message({
showClose: true,
message: "请先上传案件笔录",
type: "warning",
});
} else {
this.loadingSub = true;
let id = this.formData.id;
changeCaseStatus({
id: id,
}).then((res) => {
if (res.code == 200) {
this.$emit("getcaseApply", this.queryParams);
this.cancel();
this.loadingSub = false
this.fileList = [];
}
}).catch((err) => {
this.loadingSub = false
});
}
},
// 文件上传成功
handlSuccess(res, file) {
// this.fileList.push(file);
let val = {
id: this.form.id,
version: this.form.version,
};
this.recordArr = [];
selectCaseApply(val).then((res) => {
this.formData.caseAttachList = res.data.caseAttachList;
this.formData.caseAttachList.forEach(item => {
if (item.annexType == 7) {
this.recordArr.push({
annexName: item.annexName,
annexPath: item.annexPath,
});
}
})
});
},
// 文件列表移除文件时的钩子
handleRemove(file, fileList) { },
handlePreview(file) { },
// 删除文件之前的钩子,参数为上传的文件和文件列表,若返回 false 或者返回 Promise 且被 reject,则停止删除。
beforeRemove(file, fileList) {
return this.$confirm(`确定移除 ${file.name}?`);
},
// 文件超出个数限制时的钩子
handleExceed(files, fileList) {
this.$message.warning(
`当前限制选择 3 个文件,本次选择了 ${files.length} 个文件,共选择了 ${files.length + fileList.length
} 个文件`
);
},
beforeAvatarUpload(file) {
this.filedata.id = this.formData.id;
},
// 上传裁决书
UploadUrls() {
return window.location.origin + "/API/video/upload";
},
UploadUrlsT() {
return window.location.origin + "/API/evidence/uploadRecord";
},
beforeRemoves(file, fileList) {
return this.$confirm(`确定移除 ${file.name}?`);
},
beforeUpload(flie, fileList) {
// this.fileList = fileList;
},
// 上传文件成功
handlSuccessAw(res, file) {
// this.fileListAw.push(file);
let val = {
id: this.form.id,
version: this.form.version,
};
this.awardArr = [];
selectCaseApply(val).then((res) => {
this.formData.caseAttachList = res.data.caseAttachList;
this.formData.caseAttachList.forEach(item => {
if (item.annexType == 3) {
this.awardArr.push(item);
}
})
});
},
beforeAvatarUploads() {
this.filedatas.caseId = this.formData.id;
}
},
};
</script>
@@ -3,7 +3,14 @@
<el-dialog title="案件流程" :visible="processVisable" @close="cancel" center :distroy-on-close="true">
<div>
<el-steps class="steps" :active="caseStatus">
<el-step :title="item.caseNodeName || item.content" v-for="(item,index) in pageData.allCasenode" :key="index" :description="(item.createNickName || '') + (item.caseNodeTime || '')"></el-step>
<!-- <el-step :title="item.caseNodeName || item.content" v-for="(item,index) in pageData.allCasenode" :key="index" :description="(item.createNickName || '') +(item.caseNodeTime || '')+(item.nextRoleName || '')"></el-step> -->
<el-step :title="item.caseNodeName || item.content" v-for="(item,index) in pageData.allCasenode" :key="index">
<template slot="description">
<p>{{item.createNickName || ''}}{{item.caseNodeTime || ''}}</p>
<p>{{item.currentRoleName}}</p>
<p>{{item.nextRoleName || ''}}</p>
</template>
</el-step>
</el-steps>
</div>
@@ -41,6 +48,7 @@ export default {
selectCaseProgress(data).then(res=>{
this.pageData = res.data.data;
let allCasenode = res.data.data.allCasenode;
console.log(allCasenode)
allCasenode.forEach((item,index) => {
if(item.caseNode==res.data.data.caseStatus){
this.caseStatus = index
@@ -0,0 +1,140 @@
<template>
<div>
<el-dialog title="邮件内容" :visible="emailVidable" @close="cancel" center :distroy-on-close="true">
<div>
<el-form>
<el-col :span="24">
<el-form-item label="邮件主题:" label-width="100px">
<div>{{ emailRow.mailSubject }}</div>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="收件人:" label-width="100px">
<div>{{ emailRow.mailAddress }}</div>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="发件人:" label-width="100px">
<div>{{ emailRow.mailFromAddress }}</div>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="邮件附件:" label-width="100px">
<div style="color: blue; cursor: pointer" v-for="(item, index) in emailRow.caseAttachList"
:key="index" @click="viewAttachments(item.annexPath)">
{{ item.annexName }}
</div>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="附件上传:" label-width="100px">
<el-upload class="upload-demo" accept=".doc,.docx,.pdf" ref="upload" :action="UploadUrl()"
:headers="headers" :data="filedata" :on-preview="handlePreview"
:on-remove="handleRemove" :limit="1" :on-change="beforeUpload"
:on-success="handlSuccess" :file-list="fileList">
<el-button slot="trigger" size="small" type="primary">选取文件</el-button>
<div slot="tip" class="el-upload__tip">
只能上传.doc,docx,pdf文件
</div>
</el-upload>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="邮件正文:" label-width="100px">
<el-input type="textarea" :rows="4" placeholder="请输入内容" v-model="sendData"></el-input>
</el-form-item>
</el-col>
</el-form>
</div>
<div slot="footer" class="dialog-footer">
<el-button @click="cancel" class="endbutton1" round><span>取 消</span></el-button>
<el-button @click="submitSend" class="endbutton1" type="primary" round><span>确 认</span></el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import {
updateSendContent,
update,
} from "@/api/deliveryRecord/deliveryRecord.js";
import { getToken } from "@/utils/auth";
export default {
props: ["emailVidable", "emailRow", "queryParams"],
data() {
return {
sendData: "",
fileURL: window.location.origin + "/API",
headers: {
Authorization: "Bearer " + getToken(),
},
filedata: {
annexType: 13,
},
fileList: [],
files: [],
};
},
watch: {
emailVidable(val) {
if (val) {
console.log(this.emailRow);
this.sendData = this.emailRow.mailContent;
}
},
},
methods: {
cancel() {
this.$emit("cancelEmail");
},
submitSend() {
console.log(this.emailRow.mailContent);
let caseAttachListParms = {};
if (this.files.annexId) {
caseAttachListParms = {
id: this.emailRow.id,
mailContent: this.sendData,
caseAttachList: [{ annexId: this.files.annexId }],
}
} else{
caseAttachListParms = {
id: this.emailRow.id,
mailContent: this.sendData,
caseAttachList: [],
}
}
this.updateSendContentFn(caseAttachListParms);
},
updateSendContentFn(data) {
update(data).then((res) => {
this.$message.success("更新成功");
this.$emit("cancelEmail");
this.$emit("getList", this.queryParams);
this.$refs.upload.clearFiles(); // 清除文件列表
});
},
// 查看附件下载附件
viewAttachments(val) {
window.open(this.fileURL + val);
},
/**上传地址*/
UploadUrl() {
return window.location.origin + "/API/evidence/upload";
},
handlePreview(file) { },
handleRemove(file, fileList) { },
beforeUpload(flie, fileList) {
},
handlSuccess(res, file) {
const fileSuccess = [{ annexId: res.annexId, annexType: res.annexType, annexName: res.newFileName, annexPath: res.fileName, onlyOfficeFileId: res.onlyOfficeFileId }]
// this.emailRow.caseAttachList = fileSuccess
this.files = res
console.log(res)
},
},
};
</script>
<style lang="scss" scoped></style>
@@ -0,0 +1,69 @@
<template>
<div>
<el-dialog title="修改内容" :visible="resendVidable" v-if="resendVidable" @close="cancel" center
:distroy-on-close="true">
<div style="margin-bottom: 30px;"><span style="font-weight: bold;">发送内容:</span>{{ sendData }}</div>
<el-form label-width="100px">
<el-form-item v-for="(item,index) in rowData.templateParams" :label="item.paramName" :key="item.id">
<el-input v-model="rowData.templateParams[index].paramValue" @input="changeContent"></el-input>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button @click="cancel" class="endbutton1" round><span>取 消</span></el-button>
<el-button @click="submitSend" class="endbutton1" type="primary" round><span>确 认</span></el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import {
updateSendContent,
} from "@/api/deliveryRecord/deliveryRecord.js";
export default {
props: ["resendVidable", "rowData","queryParams"],
data() {
return {
sendData:'',
param:"",
paramValue:""
};
},
watch: {
resendVidable(val){
if(val){
this.sendData = this.rowData.sendContent;
}
}
},
methods: {
cancel() {
this.$emit("cancelSend");
},
submitSend() {
console.log(this.rowData)
this.updateSendContentFn({
id:this.rowData.id,
templateParams:this.rowData.templateParams
})
},
updateSendContentFn(data){
updateSendContent(data).then(res=>{
this.$message.success('更新成功');
this.$emit("cancelSend");
this.$emit('getList',this.queryParams);
})
},
changeContent(){
let templateContent = this.rowData.templateContent
this.rowData.templateParams.forEach(item => {
templateContent = templateContent.replace(item.param,item.paramValue)
});
this.sendData = templateContent
}
},
};
</script>
<style lang="scss" scoped></style>
+35 -2
View File
@@ -27,7 +27,14 @@
<!-- 缴费人 -->
<!-- <el-table-column label="案件状态" align="center" prop="caseStatusName" /> -->
<el-table-column label="内容" align="center" prop="mailContent"></el-table-column>
<el-table-column label="操作" align="center">
<template slot-scope="scope">
<el-button size="mini" type="text" @click="emailEditing(scope.row)" icon="el-icon-s-promotion">邮箱编辑</el-button>
<el-button v-if="scope.row.sendStatus == '未发送'" size="mini" type="text" @click="resendCounts(scope.row)" icon="el-icon-s-promotion">重新发送</el-button>
</template>
</el-table-column>
</el-table>
<emailEdits :emailVidable="emailVidable" @cancelEmail="cancelEmail" @getList="getList" :queryParams="queryParams" :emailRow="emailRow"></emailEdits>
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
@pagination="getList(queryParams)" />
@@ -38,12 +45,12 @@
import {
emailList,
} from "@/api/deliveryRecord/deliveryRecord.js";
import emailEdits from "./components/emailEdits.vue";
import { getDicts } from '@/api/system/dict/data.js'
export default {
name: "paymentList",
dicts: ["case_status"],
components: {},
components: {emailEdits},
data() {
return {
queryParams: {
@@ -60,6 +67,8 @@ export default {
// 校验表单
rules: {},
dataList: [],
emailVidable:false,
emailRow:{},
};
},
created() {
@@ -69,6 +78,30 @@ export default {
})
},
methods: {
// 邮箱编辑内容
emailEditing(data){
this.emailVidable = true
this.emailRow = data;
console.log(data)
},
// 重新发送
resendCounts(row){
if(row.sendStatus=='未发送'){
row.sendStatus = 0
}else if(row.sendStatus=='已发送'){
row.sendStatus = 1
}
reSendMailRecord(row).then(res=>{
console.log(res)
this.$message.success('发送成功');
this.getList(this.queryParams);
})
},
// 关闭弹窗
cancelEmail(){
this.emailVidable = false
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
+65 -14
View File
@@ -22,29 +22,40 @@
<el-table-column label="发送时间" align="center" prop="sendTime" />
<el-table-column label="发送状态" align="center" prop="sendStatus" />
<el-table-column label="发送内容" align="center" prop="sendContent" :show-overflow-tooltip="true" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button size="mini" @click="copyContent(scope.row.sendContent)" type="text"
icon="el-icon-document-copy">复制内容</el-button>
<el-button size="mini" @click="resend(scope.row)" type="text" icon="el-icon-s-promotion">编辑内容</el-button>
<el-button v-if="scope.row.sendStatus == '发送失败'|| scope.row.sendStatus == '发送中'" size="mini" type="text" @click="resendMessage(scope.row)" icon="el-icon-s-promotion">重新发送</el-button>
</template>
</el-table-column>
</el-table>
<resend :resendVidable="resendVidable" :rowData="rowData" @getList="getList" @cancelSend="cancelSend" :queryParams="queryParams"></resend>
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
@pagination="getList({caseNum:queryParams.caseNum},{pageNum:queryParams.pageNum,pageSize:queryParams.pageSize})" />
@pagination="getList({caseNum:queryParams.caseNum,pageNum:queryParams.pageNum,pageSize:queryParams.pageSize})" />
</div>
</template>
<script>
import {
smsList,
recordList,reSendShortMessage
} from "@/api/deliveryRecord/deliveryRecord.js";
import resend from "./components/resend.vue";
import { getDicts } from '@/api/system/dict/data.js'
export default {
name: "paymentList",
dicts: ["case_status"],
components: { },
components: {resend },
data() {
return {
queryParams: {
pageNum: 1,
pageSize: 10,
},
resendVidable:false,
rowData:{},
caseStatus: [],
// 遮罩层
loading: false,
@@ -59,14 +70,14 @@ export default {
},
created() {
getDicts("case_status").then(res => {
this.getList({caseNum:this.queryParams.caseNum},{pageNum:this.queryParams.pageNum,pageSize:this.queryParams.pageSize});
this.getList({caseNum:this.queryParams.caseNum,pageNum:this.queryParams.pageNum,pageSize:this.queryParams.pageSize});
})
},
methods: {
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList({caseNum:this.queryParams.caseNum},{pageNum:this.queryParams.pageNum,pageSize:this.queryParams.pageSize});
this.getList({caseNum:this.queryParams.caseNum,pageNum:this.queryParams.pageNum,pageSize:this.queryParams.pageSize});
},
/** 重置按钮操作 */
resetQuery() {
@@ -74,18 +85,19 @@ export default {
this.handleQuery();
},
// 查询列表数据
getList(data,params) {
getList(data) {
console.log(data)
this.loading = true;
smsList(data,params).then((response) => {
recordList(data).then((response) => {
this.dataList = response.rows;
console.log(this.dataList)
this.dataList.forEach(item=>{
if(item.sendStatus == 0){
item.sendStatus = "发送失败"
}else if(item.sendStatus == 1){
item.sendStatus = "已送达"
console.log(item)
if(item.sendStatus == 1){
item.sendStatus = "发送成功"
}else if(item.sendStatus == 2){
item.sendStatus = "已读取"
}else{
item.sendStatus = "发送中"
}else if(item.sendStatus == 3){
item.sendStatus = "发送失败"
}
})
@@ -93,6 +105,45 @@ export default {
this.loading = false;
});
},
/** 复制内容 */
copyContent(row) {
const el = document.createElement('textarea');
el.value = row;
document.body.appendChild(el);
el.select();
document.execCommand('copy');
document.body.removeChild(el);
this.$message.success('复制成功');
},
/**重新发送 */
resend(row){
console.log(row)
this.resendVidable = true;
this.rowData = row;
},
/**关闭弹窗 */
cancelSend(){
this.resendVidable = false;
},
// 重新发送
resendMessage(row){
console.log(row.sendStatus)
let valuesRow ={
id:row.id,
templateId:row.templateId,
phone:row.phone,
templateParams:row.templateParams
}
this.reSendShortMessageFn(valuesRow)
console.log(valuesRow)
},
reSendShortMessageFn(valuesRow){
reSendShortMessage(valuesRow).then(res=>{
this.$message.success('发送成功');
this.getList({ caseNum: this.queryParams.caseNum,pageNum: this.queryParams.pageNum, pageSize: this.queryParams.pageSize });
})
}
},
};
</script>
@@ -80,12 +80,19 @@ export default {
};
},
created() {
this.getarbitrAtor();
// this.getarbitrAtor();
},
watch:{
showformateCourt(val){
if(val){
this.getarbitrAtor({caseId:this.formateCourtData.id});
}
}
},
methods: {
// 获取仲裁员信息
getarbitrAtor() {
arbitrAtor({}).then((res) => {
getarbitrAtor(val) {
arbitrAtor(val).then((res) => {
this.dataList = res.rows;
this.total = res.total;
});
+21 -9
View File
@@ -113,6 +113,15 @@
<div class="imgTitle">待核验仲裁文书</div>
</div>
</div>
<div class="cardList" v-hasPermi="['home:arbitratorCheck']" @click="pushPage(18)">
<div class="badge">{{ dataCount.arbitratorApplyAwardConfirm }}</div>
<div class="cardMain">
<img class="iconImg" src="@/assets/images/daishencha.png" alt="">
</div>
<div class="cardMain">
<div class="imgTitle">待仲裁员核验仲裁文书</div>
</div>
</div>
<div class="cardList" v-hasPermi="['home:caseApplyAwardConfirm']" @click="pushPage(12)">
<div class="badge">{{ dataCount.caseApplyAwardConfirm }}</div>
<div class="cardMain">
@@ -131,12 +140,13 @@
<div class="imgTitle">待仲裁文书签名</div>
</div>
</div>
<div class="cardList" v-hasPermi="['home:caseApplyAwardSignature']" @click="pushPage(14)">
<div class="cardList" v-hasPermi="['home:seal']" @click="pushPage(14)">
<div class="badge">{{ dataCount.caseApplyAwardSeal }}</div>
<div class="cardMain">
<img class="iconImg" src="@/assets/images/daishencha.png" alt="">
</div>
<div class="cardMain">
<div class="imgTitle">待仲裁文书用印</div>
</div>
</div>
@@ -184,13 +194,15 @@ export default {
},
// 点击代办案件按钮
pushPage(status) {
if (status == 0 || status == 1 || status == 2 || status == 5 || status == 6 || status == 7 || status == 31 || status == 8 || status == 9) {
this.$router.push({ name: 'CaseManagement/caseList', params: { status: status } })
} else if (status == 11 || status == 12 || status == 13 || status == 14 || status == 15 || status == 16) {
this.$router.push({ name: 'AwardManagement/listofAwards', params: { status: status } })
} else if (status == 3){
this.$router.push({ name: 'PaymentManagement/paymentList', params: { status: status } })
}
if (status == 0 || status == 1 || status == 2 || status == 5 || status == 6 || status == 7 || status == 31 || status == 8 || status == 9||status == 3||status == 11 || status == 12 || status == 13 || status == 14 || status == 15 || status == 16 || status == 18) {
this.$router.push({ name: 'CaseManagement/caseList', params: { status: status + '' } })
}
// else if (status == 11 || status == 12 || status == 13 || status == 14 || status == 15 || status == 16 || status == 18) {
// this.$router.push({ name: 'AwardManagement/listofAwards', params: { status: status + '' } })
// }
// else if (status == 3){
// this.$router.push({ name: 'PaymentManagement/paymentList', params: { status: status + ''} })
// }
}
// goTarget(href) {
// window.open(href, "_blank");
@@ -270,7 +282,7 @@ export default {
}
.imgTitle {
font-size: 20px;
font-size: 18px;
font-weight: 600;
}
}
@@ -0,0 +1,138 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="140px">
<el-form-item label="机构名称首字母拼写" prop="deptNameFirchar">
<el-input v-model="queryParams.deptNameFirchar" placeholder="请输入机构首字母拼写" clearable @keyup.enter.native="handleQuery" />
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="addList">新增</el-button>
<!-- v-hasPermi="['caseManagement:list:add']" -->
</el-col>
</el-row>
<el-table v-loading="loading" style="width: 100%" :data="dataList">
<el-table-column label="序号" type="index" align="center">
<template slot-scope="scope">
<span>{{
(queryParams.pageNum - 1) * queryParams.pageSize + scope.$index + 1
}}</span>
</template>
</el-table-column>
<el-table-column label="规则类型" align="center" prop="ruleType" :show-overflow-tooltip="true" />
<el-table-column label="前缀" align="center" prop="prefixstr" :show-overflow-tooltip="true" />
<el-table-column label="时间格式" align="center" prop="dateFormat" :show-overflow-tooltip="true" />
<el-table-column label="机构名称" align="center" prop="deptName" :show-overflow-tooltip="true" />
<el-table-column label="机构名称首字母拼写" prop="deptNameFirchar" align="center" :show-overflow-tooltip="true" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button size="mini" type="text" icon="el-icon-delete" @click="deleteTemplate(scope.row)">删除</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" @click="eidtTemplate(scope.row)">修改</el-button>
</template>
</el-table-column>
</el-table>
<pagination :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
@pagination="getList(queryParams)"
/>
<addOrdered :caseVisable="caseVisable" @cancelCase="cancelCase" @getList="getList" :queryParams="queryParams"></addOrdered>
<modifyTemplate :modifyVisable="modifyVisable" @cancelModify="cancelModify" :editData="editData" :queryParams="queryParams"></modifyTemplate>
</div>
</template>
<script>
import addOrdered from './components/addOrdered.vue'
import modifyTemplate from './components/modifyTemplate.vue'
import {caseNumRuleList,deleteCaseNumRule} from '@/api/officialSeal/officialSeal.js'
export default {
components: {
addOrdered,
modifyTemplate
},
data() {
return {
queryParams: {
pageNum: 1,
pageSize: 10,
},
// 遮罩层
loading: false,
// 总条数
total: 0,
caseVisable: false,//新增弹窗
modifyVisable:false, //修改模板
dataList: [],
editData:{}
};
},
created() {
this.getList(this.queryParams)
},
methods: {
// 新增模板
addList() {
this.caseVisable = true;
},
// 修改模板
eidtTemplate(row){
this.modifyVisable =true;
this.editData =row;
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList(this.queryParams);
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
getList(parm){
this.loading = true;
caseNumRuleList(parm).then(res=>{
res.rows.forEach(item => {
if(item.ruleType==1){
item.ruleType="字符串"
}else if(item.ruleType==2){
item.ruleType="整数"
}
if(item.dateFormat==1){
item.dateFormat="yyyy-MM-dd"
}
});
this.dataList = res.rows;
this.total = res.total
this.loading = false;
})
},
deleteTemplate(row){
this.$modal.confirm("是否删除").then((res) => {
this.deleteSealFn({ id: row.id })
}).catch(() =>{
})
},
// 删除接口
deleteSealFn(data) {
deleteCaseNumRule(data).then(res => {
this.$modal.msgSuccess("删除成功!");
this.getList(this.queryParams);
})
},
cancelCase() {
this.caseVisable = false;
},
cancelModify(){
this.modifyVisable =false;
}
},
};
</script>
<style lang="scss" scoped></style>
@@ -0,0 +1,95 @@
<template>
<div>
<el-dialog title="编号新增" :visible="caseVisable" v-if="caseVisable" @close="cancel" width="600px" center>
<el-form label-position="left" :model="ruleForm" ref="ruleForm" :rules="rules" label-width="100px"
class="demo-ruleForm">
<el-form-item label="规则类型:" prop="ruleType">
<el-select placeholder="请选择规则类型" v-model="ruleForm.ruleType">
<el-option label="字符串" :value=1></el-option>
<el-option label="整数" :value=2></el-option>
</el-select>
</el-form-item>
<el-form-item label="前缀:" prop="prefixstr">
<el-input v-model="ruleForm.prefixstr" placeholder="请输入前缀内容" />
</el-form-item>
<el-form-item label="时间格式:" prop="dateFormat">
<el-select placeholder="请选择时间格式" v-model="ruleForm.dateFormat">
<el-option label="yyyy-MM-dd" :value=1></el-option>
</el-select>
</el-form-item>
<el-form-item label="机构名称:" prop="deptName">
<el-input v-model="ruleForm.deptName" placeholder="请输入机构名称" />
</el-form-item>
<el-form-item label="机构名称首字母拼写:" prop="deptNameFirchar">
<el-input v-model="ruleForm.deptNameFirchar" placeholder="请输入机构名称首字母拼写" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button class="endbutton" @click="cancel"><span>取 消</span></el-button>
<el-button type="primary" class="endbutton" @click="submitUpload"><span>确认</span></el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { insertCaseNumRule } from "@/api/officialSeal/officialSeal.js";
export default {
props: ["caseVisable","queryParams"],
dicts: ["manager_type"],
data() {
return {
ruleForm:{},
rules: {
ruleType: [
{ required: true, message: '请输入规则类型', trigger: 'blur' },
],
prefixstr: [
{ required: true, message: '请输入前缀', trigger: 'blur' },
],
dateFormat: [
{ required: true, message: '请输入时间格式', trigger: 'blur' },
],
deptName: [
{ required: true, message: '请输入机构名称', trigger: 'blur' },
],
deptNameFirchar: [
{ required: true, message: '请输入首字母拼写', trigger: 'blur' },
]
}
};
},
watch: {
caseVisable(val) {
if (val) {
this.ruleForm = {};
}
}
},
created() {
},
methods: {
cancel() {
this.$emit("cancelCase");
},
// 新增模板
insertManagerFn(data) {
insertCaseNumRule(data).then(res => {
this.$message.success('新增成功');
this.$emit("cancelCase");
this.$emit('getList', this.queryParams);
})
},
submitUpload() {
this.$refs['ruleForm'].validate((valid) => {
if (valid) {
this.insertManagerFn(this.ruleForm)
}
});
}
},
};
</script>
<style lang="scss" scoped></style>
@@ -0,0 +1,113 @@
<template>
<div>
<el-dialog title="编号修改" :visible="modifyVisable" v-if="modifyVisable" @close="cancel" width="600px" center>
<el-form label-position="left" :model="ruleForm" ref="ruleForm" :rules="rules" label-width="100px"
class="demo-ruleForm">
<el-form-item label="规则类型:" prop="ruleType">
<el-select placeholder="请选择规则类型" v-model="ruleForm.ruleType">
<el-option label="字符串" :value="1"></el-option>
<el-option label="整数" :value="2"></el-option>
</el-select>
</el-form-item>
<el-form-item label="前缀:" prop="prefixstr">
<el-input v-model="ruleForm.prefixstr" placeholder="请输入前缀内容" />
</el-form-item>
<el-form-item label="时间格式:" prop="dateFormat">
<el-select placeholder="请选择时间格式" v-model="ruleForm.dateFormat">
<el-option label="yyyy-MM-dd" :value="1"></el-option>
</el-select>
</el-form-item>
<el-form-item label="机构名称:" prop="deptName">
<el-input v-model="ruleForm.deptName" placeholder="请输入机构名称" />
</el-form-item>
<el-form-item label="机构名称首字母拼写:" prop="deptNameFirchar">
<el-input v-model="ruleForm.deptNameFirchar" placeholder="请输入机构名称首字母拼写" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button class="endbutton" @click="cancel"><span>取 消</span></el-button>
<el-button type="primary" class="endbutton" @click="submitUpload"><span>确认</span></el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { updateCaseNumRule} from "@/api/officialSeal/officialSeal.js";
export default {
props: ["modifyVisable","editData","queryParams"],
dicts: ["manager_type"],
data() {
return {
ruleForm:{},
rules: {
ruleType: [
{ required: true, message: '请输入规则类型', trigger: 'blur' },
],
prefixstr: [
{ required: true, message: '请输入前缀', trigger: 'blur' },
],
dateFormat: [
{ required: true, message: '请输入时间格式', trigger: 'blur' },
],
deptName: [
{ required: true, message: '请输入机构名称', trigger: 'blur' },
],
deptNameFirchar: [
{ required: true, message: '请输入首字母拼写', trigger: 'blur' },
]
}
};
},
watch: {
editData(val) {
if (val) {
this.ruleForm = val;
if(this.ruleForm.dateFormat=="yyyy-MM-dd"){
this.ruleForm.dateFormat=1
}
if(this.ruleForm.ruleType=="整数"){
this.ruleForm.ruleType=2
}else if(this.ruleForm.ruleType=="字符串"){
this.ruleForm.ruleType=1
}
}
}
},
created() {
},
methods: {
cancel() {
this.$emit("cancelModify");
},
// 修改模板
updateCaseNumRuleFn(data) {
updateCaseNumRule(data).then(res => {
console.log(res)
this.$message.success('修改成功');
this.$emit("cancelModify");
this.$emit('getList', this.queryParams);
})
},
submitUpload() {
this.$refs['ruleForm'].validate((valid) => {
if (valid) {
this.updateCaseNumRuleFn({
id:this.ruleForm.id,
prefixstr:this.ruleForm.prefixstr,
dateFormat:this.ruleForm.dateFormat,
deptNameFirchar:this.ruleForm.deptNameFirchar,
deptName:this.ruleForm.deptName,
ruleType:this.ruleForm.ruleType,
})
}
});
}
},
};
</script>
<style lang="scss" scoped></style>
@@ -0,0 +1,94 @@
<template>
<div>
<el-dialog title="新增模板" :visible="uploadVisable" v-if="uploadVisable" @close="cancel" width="600px" center>
<el-form :model="ruleForm" label-position="left" :rules="rules" ref="ruleForm" label-width="90px"
class="demo-ruleForm">
<el-form-item label="模板名称" prop="name">
<el-input v-model="ruleForm.name"></el-input>
</el-form-item>
<el-form-item label="模板类型" prop="type">
<el-select v-model="ruleForm.type" placeholder="请选择">
<el-option v-for="dict in dict.type.manager_type" :key="dict.value" :label="dict.label"
:value="dict.value"></el-option>
</el-select>
</el-form-item>
<el-form-item label="模板内容" prop="content">
<el-input type="textarea" placeholder="请输入内容" v-model="ruleForm.content">
</el-input>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button @click="cancel" class="endbutton"><span>取 消</span></el-button>
<el-button type="primary" @click="submitUpload" class="endbutton"><span>确认</span></el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { getToken } from "@/utils/auth";
import {
insertManager,
} from "@/api/officialSeal/officialSeal.js";
export default {
props: ["uploadVisable", "uploadData", "queryParams"],
dicts: ["manager_type"],
data() {
return {
fileList: [],
data: [],
tempList: [],
isImg: false,
headers: {
Authorization: "Bearer " + getToken(),
},
filedata: {},
flagBtn: false,
ruleForm: {},
rules: {
name: [
{ required: true, message: '请输入模板名称', trigger: 'blur' },
],
type: [
{ required: true, message: '请输入模板名称', trigger: 'blur' },
],
content: [
{ required: true, message: '请输入模板名称', trigger: 'blur' },
]
}
};
},
watch: {
uploadVisable(val) {
if (val) {
this.ruleForm = {};
}
}
},
created() {
},
methods: {
cancel() {
this.$emit("cancelUpload");
},
// 新增模板
insertManagerFn(data) {
insertManager(data).then(res => {
this.$message.success('新增成功');
this.$emit("cancelUpload");
this.$emit('getList', this.queryParams);
})
},
submitUpload() {
this.$refs['ruleForm'].validate((valid) => {
if (valid) {
console.log(this.ruleForm, "LLLLLLLLLLLLLLLLLLLLLLL");
this.insertManagerFn(this.ruleForm)
}
});
},
},
};
</script>
<style lang="scss" scoped></style>
@@ -0,0 +1,90 @@
<template>
<div>
<el-dialog title="修改模板" :visible="editVisable" v-if="editVisable" @close="cancel" width="600px" center>
<el-form :model="ruleForm" label-position="left" :rules="rules" ref="ruleForm" label-width="90px"
class="demo-ruleForm">
<el-form-item label="模板名称" prop="name">
<el-input v-model="ruleForm.name"></el-input>
</el-form-item>
<el-form-item label="模板类型" prop="type">
<el-select v-model="ruleForm.type" placeholder="请选择">
<el-option v-for="dict in dict.type.manager_type" :key="dict.value" :label="dict.label"
:value="dict.value"></el-option>
</el-select>
</el-form-item>
<el-form-item label="模板内容" prop="content">
<el-input type="textarea" placeholder="请输入内容" v-model="ruleForm.content">
</el-input>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button @click="cancel" class="endbutton"><span>取 消</span></el-button>
<el-button type="primary" @click="submitUpload" class="endbutton"><span>确认</span></el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { updateManager } from "@/api/officialSeal/officialSeal"
export default {
props: ["editVisable", "editData", "queryParams"],
dicts: ["manager_type"],
data() {
return {
data: [],
flagBtn: false,
ruleForm: {},
rules: {
name: [
{ required: true, message: '请输入模板名称', trigger: 'blur' },
],
type: [
{ required: true, message: '请输入模板名称', trigger: 'blur' },
],
content: [
{ required: true, message: '请输入模板名称', trigger: 'blur' },
]
}
};
},
watch: {
editData(val) {
if (val) {
this.ruleForm = val;
this.fileList = [];
this.ruleForm.type = this.ruleForm.type + '';
}
}
},
created() {
},
methods: {
cancel() {
this.$emit("cancelEdit");
},
// 修改模板
updateManagerFn(data) {
updateManager(data).then(res => {
this.$message.success('修改成功');
this.$emit("cancelEdit");
this.$emit('getList', this.queryParams);
})
},
submitUpload() {
this.$refs['ruleForm'].validate((valid) => {
if (valid) {
this.updateManagerFn({
name: this.ruleForm.name,
content: this.ruleForm.content,
type: this.ruleForm.type,
id:this.ruleForm.id
})
}
});
},
},
};
</script>
<style lang="scss" scoped></style>
@@ -0,0 +1,288 @@
<template>
<div>
<el-dialog title="设置抓取规则" :visible="rulesVisable" v-if="rulesVisable" @close="cancelRules"
append-to-body :destroy-on-close="true" center>
<el-button type="primary" icon="el-icon-plus" style="margin-bottom: 20px;"
@click="addForm">新增系统内置抓取规则</el-button>
<div class="formDom">
<el-form ref="form" :model="formData" label-width="150px">
<div class="formItem" v-for="(item, index) in formData.forms" :key="item.key">
<el-button type="primary" icon="el-icon-delete" style="margin-bottom: 20px;"
@click="deleteForm(item)">删除</el-button>
<el-row>
<el-col :span="12">
<el-form-item label="抓取文件名:" :prop="'forms.' + index + '.fileName'" :rules="[
{
required: true,
message: '抓取文件名不能为空',
},
]">
<el-input v-model="item.fileName" placeholder="请输入抓取文件名" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="字段名:" :prop="'forms.' + index + '.columnName'" :rules="[
{
required: true,
message: '字段名不能为空',
},
]">
<el-select v-model="item.columnName" placeholder="请选择" @change="columnNameChange(item)">
<el-option v-for="dict in dict.type.case_built_type" :key="dict.value"
:label="dict.label" :value="dict.label"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="开始抓取字段:" :prop="'forms.' + index + '.startContent'">
<el-input v-model="item.startContent" placeholder="请输入开始抓取字段" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="结束抓取字段:" :prop="'forms.' + index + '.endContent'">
<el-input v-model="item.endContent" placeholder="结束抓取字段" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="指定抓取开始位置:" :prop="'forms.' + index + '.startContentRepeatOrder'">
<el-input-number v-model="item.startContentRepeatOrder" controls-position="right" :min="1"></el-input-number>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="指定抓取结束位置:" :prop="'forms.' + index + '.endContentRepeatOrder'">
<el-input-number v-model="item.endContentRepeatOrder" controls-position="right" :min="1"></el-input-number>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="抓取方向:" :prop="'forms.' + index + '.fatchOrder'">
<el-select v-model="item.fatchOrder" placeholder="请选择">
<el-option v-for="dict in fatchOrderList" :key="dict.key"
:label="dict.name" :value="dict.key"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
</div>
</el-form>
</div>
<el-button type="primary" icon="el-icon-plus" style="margin-bottom: 20px;"
@click="addFormCustom">新增自定义抓取规则</el-button>
<div class="formDom">
<el-form ref="form_custom" :model="formData_custom" label-width="150px">
<div class="formItem" v-for="(item, index) in formData_custom.forms" :key="item.key">
<el-button type="primary" icon="el-icon-delete" style="margin-bottom: 20px;"
@click="deleteFormCustom(item)">删除</el-button>
<el-row>
<el-col :span="12">
<el-form-item label="字段:" :prop="'forms.' + index + '.column'" :rules="[
{
required: true,
message: '字段不能为空',
},
]">
<el-input v-model="item.column" placeholder="请输入字段" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="字段名:" :prop="'forms.' + index + '.columnName'" :rules="[
{
required: true,
message: '字段名不能为空',
},
]">
<el-input v-model="item.columnName" placeholder="请输入字段名" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="抓取文件名:" :prop="'forms.' + index + '.fileName'" :rules="[
{
required: true,
message: '抓取文件名不能为空',
},
]">
<el-input v-model="item.fileName" placeholder="请输入抓取文件名" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="开始抓取字段:" :prop="'forms.' + index + '.startContent'">
<el-input v-model="item.startContent" placeholder="请输入开始抓取字段" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="结束抓取字段:" :prop="'forms.' + index + '.endContent'">
<el-input v-model="item.endContent" placeholder="结束抓取字段" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="指定抓取开始位置:" :prop="'forms.' + index + '.startContentRepeatOrder'">
<el-input-number v-model="item.startContentRepeatOrder" controls-position="right" :min="1"></el-input-number>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="指定抓取结束位置:" :prop="'forms.' + index + '.endContentRepeatOrder'">
<el-input-number v-model="item.endContentRepeatOrder" controls-position="right" :min="1"></el-input-number>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="抓取方向:" :prop="'forms.' + index + '.fatchOrder'">
<el-select v-model="item.fatchOrder" placeholder="请选择">
<el-option v-for="dict in fatchOrderList" :key="dict.key"
:label="dict.name" :value="dict.key"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
</div>
</el-form>
</div>
<div slot="footer" class="dialog-footer">
<el-button @click="cancelRules" class="endbutton"><span>取 消</span></el-button>
<el-button type="primary" @click="submitRules" class="endbutton"><span>确认</span></el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import {
getFatchRuleByTemplateid,
saveFatchRules
} from "@/api/officialSeal/officialSeal.js";
export default {
props: ["rulesVisable", "rulesData", "queryParams"],
dicts: ["case_built_type"],
data() {
return {
formData: {
forms: [{
// fileName: "",
// startContent: '',
// endContent: '',
// column: "",
// columnName: "",
}]
},
formData_custom: {
forms: []
},
fatchOrderList: [
{
name:'从前向后抓取',
key:0
},
{
name:'从后往前抓取',
key:1
}
]
};
},
watch: {
rulesData(val) {
if (val) {
this.formData.forms = [];
this.formData_custom.forms = [];
this.getFatchRuleByTemplateidFn({ id: val.id })
}
}
},
created() {
},
methods: {
cancelRules() {
this.$emit("cancelRules");
},
addForm() {
this.formData.forms.push({
fileName: "",
startContent: '',
endContent: '',
column: "",
columnName: "",
isDefault: 0
});
},
deleteForm(item) {
var index = this.formData.forms.indexOf(item)
if (index !== -1) {
this.formData.forms.splice(index, 1)
}
},
deleteFormCustom(item) {
var index = this.formData_custom.forms.indexOf(item)
if (index !== -1) {
this.formData_custom.forms.splice(index, 1)
}
},
addFormCustom() {
this.formData_custom.forms.push({
fileName: "",
startContent: '',
endContent: '',
column: "",
columnName: "",
isDefault: 1
});
},
columnNameChange(item){
let result = this.dict.type.case_built_type.find((data=>{
return data.label == item.columnName
}))
item.column = result.value;
},
submitRules() {
this.$refs['form'].validate((valid) => {
if (valid) {
this.$refs['form_custom'].validate((valid_custom) => {
if (valid_custom) {
let paramsList = this.formData.forms.concat(this.formData_custom.forms)
this.saveFatchRulesFn({
id: this.rulesData.id,
fatchRules: paramsList
})
}
})
}
});
},
// 根据id获取抓取规则
getFatchRuleByTemplateidFn(data) {
getFatchRuleByTemplateid(data).then(res => {
// this.formData.forms = res.data;
// this.selectList = res.data
this.formData.forms = [];
this.formData_custom.forms = [];
console.log(res.data,"LLLLLLLLLLLLLLLLLLLLLLLLLLLL");
res.data.forEach(item => {
if(item.isDefault == 0){
this.formData.forms.push(item)
}else if(item.isDefault == 1){
this.formData_custom.forms.push(item)
}
});
})
},
// 提交抓取规则
saveFatchRulesFn(data) {
saveFatchRules(data).then(res => {
this.$message.success('提交成功');
this.$emit("cancelRules");
this.$emit('getList', this.queryParams);
})
}
},
};
</script>
<style lang="scss" scoped>
::v-deep .el-form {
border: 1px solid #c2bcbc;
padding: 20px;
margin-bottom: 15px;
max-height: 300px;
overflow-y: scroll;
}
.el-input-number{
width: 180px;
}
</style>
@@ -0,0 +1,58 @@
<template>
<div>
<el-dialog :title="title" :visible="listVisable" v-if="listVisable" @close="cancel" width="800px" center
:distroy-on-close="true">
<el-table v-loading="loading" :data="dataList" style="width: 100%">
<el-table-column label="字段" align="center" prop="column" :show-overflow-tooltip="true" />
<el-table-column label="字段名" align="center" prop="columnName" :show-overflow-tooltip="true" />
</el-table>
<div slot="footer" class="dialog-footer">
<el-button @click="cancel" class="endbutton"><span>取 消</span></el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import {
getTemplateInfoById
} from "@/api/officialSeal/officialSeal.js";
export default {
props: ["listVisable", "listData", "queryParams"],
data() {
return {
title: "模板字段列表",
// 遮罩层
loading: false,
dataList:[]
};
},
watch: {
listData(val) {
if (val) {
getTemplateInfoById({ id: val.id }).then(res=>{
this.dataList = res.data;
})
}
}
},
created() {
},
methods: {
cancel() {
this.$emit("cancelList");
},
},
};
</script>
<style lang="scss" scoped>
.steps {
display: flex;
flex-wrap: wrap;
}
.radiobox {
margin-top: 30px;
}
</style>
+33 -4
View File
@@ -20,6 +20,8 @@
<template slot-scope="scope">
<el-button size="mini" @click="deleteTemplate(scope.row)" type="text" icon="el-icon-delete">删除</el-button>
<el-button size="mini" @click="eidtTemplate(scope.row)" type="text" icon="el-icon-edit">修改模板</el-button>
<el-button size="mini" @click="grabRulesClick(scope.row)" type="text" icon="el-icon-edit">设置抓取规则</el-button>
<el-button size="mini" @click="templateList(scope.row)" type="text" icon="el-icon-edit">模板字段列表</el-button>
</template>
</el-table-column>
</el-table>
@@ -31,26 +33,33 @@
<sealManage :sealVisable="sealVisable" @cancelSeal="cancelSeal" :sealData="sealData">
</sealManage>
<editTemplate :editVisable="editVisable" @cancelEdit="cancelEdit" @getList="getList" :editData="editData" :queryParams="queryParams"></editTemplate>
</div>
<grabRules :rulesVisable="rulesVisable" @cancelRules="cancelRules" @getList="getList" :rulesData="rulesData" :queryParams="queryParams"></grabRules>
<temmplateList :listVisable="listVisable" @cancelList="cancelList" @getList="getList" :listData="listData" :queryParams="queryParams"></temmplateList>
</div>
</template>
<script>
import {
getTemplate,
deleteTemplate
deleteTemplate,
getTemplateInfoById
} from "@/api/officialSeal/officialSeal.js";
import addInstitution from "./components/addInstitution";
import addTemplate from "./components/addTemplate";
import sealManage from "./components/sealManage";
import editTemplate from "./components/editTemplate";
import grabRules from "./components/grabRules.vue";
import temmplateList from "./components/temmplateList.vue";
export default {
name: "paymentList",
components: {
addInstitution,
addTemplate,
sealManage,
editTemplate
editTemplate,
grabRules,
temmplateList
},
data() {
return {
@@ -70,10 +79,14 @@ export default {
operateVisable: false,//新增弹窗
uploadVisable: false,//上传弹窗
sealVisable: false,//公章列表弹窗
rulesVisable:false,//抓取规则弹窗
uploadData: {},
sealData: {},
editVisable:false,
editData:{}
editData:{},
rulesData:{},
listVisable:false,
listData:{}
};
},
created() {
@@ -114,6 +127,22 @@ export default {
cancelEdit() {
this.editVisable = false;
},
// 模板字段列表
templateList(row){
this.listVisable = true;
this.listData = row;
},
cancelList(){
this.listVisable = false;
},
// 抓取规则
grabRulesClick(row){
this.rulesVisable = true;
this.rulesData = row;
},
cancelRules(){
this.rulesVisable = false;
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
+140
View File
@@ -0,0 +1,140 @@
<template>
<div class="app-container">
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="addtemplate">新增模板</el-button>
<!-- v-hasPermi="['caseManagement:list:add']" -->
</el-col>
</el-row>
<el-table v-loading="loading" :data="dataList" style="width: 100%">
<el-table-column label="序号" type="index" align="center">
<template slot-scope="scope">
<span>{{
(queryParams.pageNum - 1) * queryParams.pageSize + scope.$index + 1
}}</span>
</template>
</el-table-column>
<el-table-column label="模板名称" align="center" prop="name" :show-overflow-tooltip="true" />
<el-table-column label="模板内容" align="center" prop="content" :show-overflow-tooltip="true" />
<el-table-column label="模板类型" align="center" prop="typeName" :show-overflow-tooltip="true" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button size="mini" @click="deleteTemplate(scope.row)" type="text" icon="el-icon-delete">删除</el-button>
<el-button size="mini" @click="eidtTemplate(scope.row)" type="text" icon="el-icon-edit">修改模板</el-button>
</template>
</el-table-column>
</el-table>
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
@pagination="getList(queryParams)" />
<addManager :uploadVisable="uploadVisable" @cancelUpload="cancelUpload" :uploadData="uploadData" @getList="getList" :queryParams="queryParams">
</addManager>
<editManager :editVisable="editVisable" @cancelEdit="cancelEdit" @getList="getList" :editData="editData" :queryParams="queryParams"></editManager>
</div>
</template>
<script>
import {
getManagerList,
deleteManager
} from "@/api/officialSeal/officialSeal.js";
import addManager from "./components/addManager";
import editManager from "./components/editManager";
export default {
name: "paymentList",
components: {
addManager,
editManager
},
data() {
return {
queryParams: {
pageNum: 1,
pageSize: 10,
},
// 遮罩层
loading: false,
// 总条数
total: 0,
// 表格数据
form: {},
// 校验表单
rules: {},
dataList: [],
operateVisable: false,//新增弹窗
uploadVisable: false,//上传弹窗
uploadData: {},
sealData: {},
editVisable:false,
editData:{}
};
},
created() {
this.getList(this.queryParams)
},
methods: {
// 删除
deleteTemplate(row) {
this.$modal
.confirm("是否删除")
.then((res) => {
this.deleteSealFn({ id: row.id })
})
},
// 删除接口
deleteSealFn(data) {
deleteManager(data).then(res => {
this.$modal.msgSuccess("删除成功!");
this.getList(this.queryParams);
})
},
// 新增模板
addtemplate(row) {
this.uploadVisable = true;
this.uploadData = row;
},
cancelUpload() {
this.uploadVisable = false;
},
// 编辑
eidtTemplate(row) {
this.editVisable = true;
this.editData = row;
},
cancelEdit() {
this.editVisable = false;
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList(this.queryParams);
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
// 查询列表数据
getList(parms) {
this.loading = true;
getManagerList(parms).then((response) => {
this.dataList = response.rows;
this.dataList.forEach(item => {
if(item.type == 1){
item.typeName = '裁决内容'
}else if(item.type == 2){
item.typeName = '调解协议'
}else if(item.type == 3){
item.typeName = '金融消费纠纷基本情况'
}
});
this.total = response.total;
this.loading = false;
});
},
},
};
</script>
<style lang="scss" scoped></style>
+108
View File
@@ -0,0 +1,108 @@
<template>
<div style="width: 100%; height: 100%">
<div id="placeholder"></div>
</div>
</template>
<script>
import { getOnlyoffice, saveOnlyOfficeFile } from "@/api/onlyoffice/onlyoffice";
import { setToken } from "@/utils/auth";
import store from "@/store";
import axios from "axios";
export default {
props: [],
data() {
return {
config: {},
flag: 0,
userId: store.getters.userId,
websock: null,
};
},
destroyed() {
//页面销毁时关闭ws连接
if (this.websock) {
this.websock.close(); // 关闭websocket
}
},
methods: {
getConfig(id) {
let edit = "edit";
if (this.flag == 0) {
edit = "view";
} else {
edit = "edit";
}
axios
.get(
`http://121.40.189.20:9090/onlyOfficeConfig/${edit}/${id}/${this.userId}/desktop/true/zhongcai`
)
.then((res) => {
this.config = res.data;
this.config.editorConfig.callbackUrl = this.config.editorConfig.callbackUrl + "/" + id;
// this.config.callbackUrl = this.config.callbackUrl + `/${this.userId}`;
var docEditor = new DocsAPI.DocEditor("placeholder", this.config);
});
},
//初始化weosocket
initWebSocket() {
if (typeof WebSocket === "undefined") {
alert("您的浏览器不支持WebSocket");
return false;
}
const wsuri = `ws://121.40.189.20:9090/api/websocket/${this.userId}`; // websocket地址
this.websock = new WebSocket(wsuri);
this.websock.onopen = this.websocketonopen;
this.websock.onmessage = this.websocketonmessage;
this.websock.onerror = this.websocketonerror;
this.websock.onclose = this.websocketclose;
},
//连接成功
websocketonopen() {
console.log("WebSocket连接成功");
},
//接收后端返回的数据
websocketonmessage(e) {
let dataJson = e.data;
if (dataJson != "conn_success") {
dataJson = JSON.parse(dataJson);
}
if (dataJson.caseId) {
saveOnlyOfficeFile({
caseAppliId: Number(dataJson.caseId),
annexName: dataJson.fileName,
annexPath: dataJson.filePath,
onlyOfficeFileId: dataJson.fileId,
}).then((res) => {
this.websock.send();
});
}
// 在这里使用后端返回的数据,对数据进行处理渲染
},
//连接建立失败重连
websocketonerror(e) {
console.log(`连接失败的信息:`, e);
this.initWebSocket(); // 连接失败后尝试重新连接
},
//关闭连接
websocketclose(e) {
console.log("断开连接", e);
},
/**是否从视频会议跳转,是处理token */
async getToken() {
setToken(this.$route.query.token);
},
},
async mounted() {
if (this.$route.query.token) {
await this.getToken();
}
let id = this.$route.query.id;
this.flag = this.$route.query.flag;
this.getConfig(id);
this.initWebSocket();
},
watch: {},
};
</script>
<style lang="scss" scoped></style>
+1 -1
View File
@@ -31,7 +31,7 @@
v-hasPermi="['monitor:online:forceLogout']" style="margin-right: 10px;">查看缴费清单</el-button>
<el-popconfirm title="是否确认缴费" @confirm="payStatus(scope.row)">
<el-button slot="reference" size="mini" type="text" icon="el-icon-bank-card"
v-hasPermi="['monitor:online:forceLogout']">缴费确认</el-button>
v-hasPermi="['monitor:online:forceLogout']">确认缴费</el-button>
</el-popconfirm>
</template>
</el-table-column>
@@ -0,0 +1,150 @@
<template>
<div>
<!-- 批量确认缴费 -->
<el-dialog title="批量确认缴费" :visible="batchVisable" @close="cancel" center :distroy-on-close="true">
<el-table v-loading="loading" style="width: 100%" :data="dataList" @selection-change="handleSelectionChange">
<el-table-column type="selection">
</el-table-column>
<el-table-column label="序号" type="index" align="center">
<template slot-scope="scope">
<span>{{
(queryParamsData.pageNum - 1) * queryParamsData.pageSize + scope.$index + 1
}}</span>
</template>
</el-table-column>
<el-table-column label="案件编号" prop="caseNum" align="center" :show-overflow-tooltip="true" />
<el-table-column label="申请人" align="center" prop="applicantName" :show-overflow-tooltip="true" />
<el-table-column label="案件标的" align="center" prop="caseSubjectAmount" />
<el-table-column label="仲裁方式" align="center" prop="arbitratMethodName" :show-overflow-tooltip="true" />
<!-- 仲裁员 -->
<el-table-column label="仲裁员" prop="arbitratorName" align="center" />
<!-- 开庭日期 -->
<el-table-column label="开庭日期" prop="hearDate" align="center" :show-overflow-tooltip="true" />
<el-table-column label="案件状态" prop="caseStatusName" align="center">
<template slot-scope="scope">
<el-tag type="success">{{ scope.row.caseStatusName }}</el-tag>
</template>
</el-table-column>
</el-table>
<pagination :total="total" :page.sync="queryParamsData.pageNum"
:limit.sync="queryParamsData.pageSize" @pagination="getBatchComfirmation(queryParamsData)" />
<div slot="footer" class="dialog-footer">
<el-button @click="cancel" class="endbutton"><span>取 消</span></el-button>
<el-button type="primary" class="endbutton" :disabled="dataList.length == 0 || batchData.length == 0" @click="submitPay"><span>确认缴费</span></el-button>
</div>
<el-dialog width="40%" title="缴费详情" :visible.sync="payVisible" append-to-body>
<!-- 案件总金额 -->
<h3>案件总金额:{{ form.totalFee / 100 }}</h3>
<el-descriptions :title="'订单信息' + (index + 1)" v-for="(item, index) in form.caseApplicationList"
:key="index" border>
<el-descriptions-item label="案件编号">{{
item.caseNum
}}</el-descriptions-item>
<el-descriptions-item label="申请人">{{
item.caseAppName
}}</el-descriptions-item>
<el-descriptions-item label="案件标的">{{
item.caseSubjectAmount
}}</el-descriptions-item>
<el-descriptions-item label="案件应缴费用">{{
item.feePayable
}}</el-descriptions-item>
<el-descriptions-item label="被申请人">{{
item.caseResName
}}</el-descriptions-item>
<!-- <el-descriptions-item label="申请人仲裁诉求">{{
item.arbitratClaims
}}</el-descriptions-item> -->
</el-descriptions>
<div slot="footer" class="dialog-footer">
<el-button @click="payCancel" class="endbutton"><span>取 消</span></el-button>
<el-button type="primary" class="endbutton" @click="submitUpload"><span>确认缴费</span></el-button>
</div>
</el-dialog>
</el-dialog>
</div>
</template>
<script>
import {caseApply} from '@/api/caseAccess/caseEntry'
import { getPayDetail,confirmPay} from "@/api/pay/pay";
export default {
props:["batchVisable"],
data() {
return {
// 遮罩层
loading: true,
// 总条数
total:0,
// 查询参数
queryParamsData: {
caseStatus: 3,
pageNum: 1,
pageSize: 10,
},
// 表格数据
dataList: [],
batchData: [],
payVisible: false,
form: {},
submitForm: {
ids:[]
},
}
},
watch: {
batchVisable(val) {
if (val) {
this.getBatchComfirmation(this.queryParamsData)
}
}
},
created(){
this.getBatchComfirmation(this.queryParamsData)
},
methods:{
// 查询列表
getBatchComfirmation(val){
this.loading = true;
caseApply(val).then(res=>{
this.dataList = res.rows
this.total = res.total;
this.loading = false;
})
},
// 选择勾选框
handleSelectionChange(val) {
this.batchData = [];
val.forEach(item => {
this.batchData.push(item.id)
})
},
// 批量缴费弹窗
submitPay() {
this.payVisible = true;
this.getPayDetailFn({ caseIds: this.batchData })
},
// 查询缴费信息
getPayDetailFn(params) {
getPayDetail(params).then(res => {
console.log(res)
this.form = res.data;
})
},
payCancel() {
this.payVisible = false;
},
submitUpload() {
this.submitForm.ids = this.batchData;
console.log(this.submitForm)
confirmPay(this.submitForm).then(res => {
this.$modal.msgSuccess("成功");
this.payCancel();
this.getBatchComfirmation(this.queryParamsData);
})
},
cancel() {
this.$emit("batchOperate");
},
}
}
</script>
@@ -1,18 +1,28 @@
<template>
<div>
<el-dialog :title="title" :visible="openDialog" @close="cancel" :destroy-on-close="true" center>
<el-form ref="form" :model="form" label-width="90px" :disabled="true">
<el-dialog
:title="title"
:visible="openDialog"
@close="cancel"
:destroy-on-close="true"
center
>
<el-form ref="form" :model="form" label-width="120px">
<el-form-item label="案件编号:" prop="caseNum">
<el-input v-model="form.caseNum" placeholder="" />
<el-input v-model="form.caseNum" placeholder="" :disabled="true" />
</el-form-item>
<el-form-item label="案件标的:" prop="caseSubjectAmount">
<el-input v-model="form.caseSubjectAmount" />
<el-input v-model="form.caseSubjectAmount" :disabled="true" />
</el-form-item>
<el-form-item label="缴费人:" prop="applicantName">
<el-input v-model="form.applicantName" placeholder="" />
<el-input
v-model="form.applicantName"
placeholder=""
:disabled="true"
/>
</el-form-item>
<el-form-item label="缴费金额:" prop="feePayable">
<el-input v-model="form.feePayable" />
<el-input v-model="form.feePayable" :disabled="true" />
</el-form-item>
<!-- <el-form-item label="缴费截图:" prop="respondent">
<el-input v-model="form.Respondent" placeholder="" />
@@ -28,14 +38,48 @@
</el-tag>
</el-form-item>
<el-form-item label="缴费凭证:" prop="caseStatusName">
<div style="color: #104fad;cursor:pointer" v-for="(item, index) in form.payOrderList" :key="index" @click="preview(item.annexPath)">
<div
style="color: #104fad; cursor: pointer"
v-for="(item, index) in form.payOrderList"
:key="index"
@click="preview(item.annexPath)"
>
{{ item.annexName }}
</div>
<!-- <el-tag>{{ form.caseStatusName }}</el-tag> -->
</el-form-item>
<!-- 判断缴费是否通过 -->
<el-form-item label="是否缴费通过:" v-if="flag == 0">
<el-radio-group v-model="agreeOrNotCheck">
<el-radio :label="1">同意</el-radio>
<el-radio :label="0">拒绝</el-radio>
</el-radio-group>
</el-form-item>
<!-- 缴费驳回原因-->
<el-form-item
label="拒绝原因:"
v-if="agreeOrNotCheck == 0"
prop="caseCheckReject"
:rules="[
{ required: true, message: '请输入驳回原因', trigger: 'blur' },
]"
>
<el-input
type="textarea"
:rows="2"
placeholder="请输入驳回原因"
v-model="form.caseCheckReject"
></el-input>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm" v-if="flag == 0" class="endbutton">确认已缴费</el-button>
<el-button
type="primary"
@click="submitForm"
v-if="flag == 0"
class="endbutton"
>确认已缴费</el-button
>
<el-button @click="cancel" class="endbutton1">取 消</el-button>
</div>
</el-dialog>
@@ -50,7 +94,8 @@ export default {
return {
// key: value
form: {},
srcList: []
srcList: [],
agreeOrNotCheck: 1,
};
},
watch: {
@@ -58,30 +103,43 @@ export default {
handler(val) {
if (val) {
this.form = val;
console.log(val)
}
},
},
openDialog: {
handler(val) {
if (val) {
this.agreeOrNotCheck = 1;
}
},
},
},
methods: {
preview(data) {
window.open(
window.location.origin + "/API" + data,
"_blank"
);
window.open(window.location.origin + "/API" + data, "_blank");
},
// 确认缴费
submitForm() {
confirmPay({ id: this.form.id }).then((res) => {
this.$message({
message: "确认成功",
type: "success",
});
if (res.code == 200) {
this.getList();
let paramsVal = {
ids:[this.form.id],
agreeOrNotCheck:this.agreeOrNotCheck,
caseCheckReject:this.form.caseCheckReject
}
this.$refs["form"].validate((valid) => {
if (valid) {
confirmPay(paramsVal).then((res) => {
this.$message({
message: "确认成功",
type: "success",
});
if (res.code == 200) {
this.getList();
}
});
this.cancel();
}
});
this.cancel();
},
cancel() {
this.$emit("cancelpaymentdetails");
+25 -6
View File
@@ -6,16 +6,16 @@
</el-form-item>
<el-form-item label="案件状态" prop="caseStatus">
<el-select :disabled="caseStatusType" v-model="queryParams.caseStatus" placeholder="请选择案件状态" clearable @keyup.enter.native="handleQuery">
<el-option v-for="dict in caseStatus" :key="dict.dictSort" :label="dict.dictLabel"
:value="dict.dictSort"></el-option>
<el-option v-for="dict in caseStatus" :key="dict.dictValue" :label="dict.dictLabel"
:value="dict.dictValue"></el-option>
</el-select>
</el-form-item>
<el-form-item label="是否完成" prop="selectCaseStatus">
<!-- <el-form-item label="是否完成" prop="selectCaseStatus">
<el-select v-model="queryParams.selectCaseStatus" placeholder="请选择状态" clearable @keyup.enter.native="handleQuery">
<el-option v-for="dict in selectCaseStatusList" :key="dict.value" :label="dict.label"
:value="dict.value"></el-option>
</el-select>
</el-form-item>
</el-form-item> -->
<!-- <el-form-item label="立案日期" prop="registerDate">
<el-date-picker
v-model="queryParams.registerDate"
@@ -31,6 +31,12 @@
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-col :span="24" style="margin-bottom:15px;">
<el-button type="primary" plain icon="el-icon-plus" size="mini"
@click="batchConfirmation"
v-hasPermi="['paymentManagement:list:batchConfirma']"
>批量确认缴费</el-button>
</el-col>
<el-table v-loading="loading" :data="dataList" style="width: 100%">
<el-table-column label="序号" type="index" align="center">
<template slot-scope="scope">
@@ -52,7 +58,7 @@
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button size="mini" type="text" icon="el-icon-zoom-in" @click="paymentconfirmationRow(scope.row)"
v-if="checkPermi(['paymentManagement:list:payconfirm']) && btnStatus">缴费确认</el-button>
v-if="checkPermi(['paymentManagement:list:payconfirm']) && btnStatus&&scope.row.caseStatus==3">缴费确认</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" @click="viewpaymentformRow(scope.row)"
v-hasPermi="['paymentManagement:list:detail']">查看缴费单</el-button>
</template>
@@ -63,6 +69,8 @@
<!-- 缴费确认数据详情 -->
<paymentdetailsDialog :openDialog="openDialog" :detailform="detailform" :title="title" :flag="flag" :getList="getList"
@cancelpaymentdetails="cancelpaymentdetails"></paymentdetailsDialog>
<!-- 批量确认缴费 -->
<batchConfirmationPaymens @batchOperate="batchOperate" :batchVisable="batchVisable"></batchConfirmationPaymens>
</div>
</template>
@@ -73,11 +81,12 @@ import {
casePay,
} from "@/api/pay/pay";
import paymentdetailsDialog from "./components/paymentdetailsDialog.vue";
import batchConfirmationPaymens from "./components/batchConfirmationPaymens.vue"
import { getDicts } from '@/api/system/dict/data.js'
export default {
name: "paymentList",
// dicts: ["case_status"],
components: { paymentdetailsDialog },
components: { paymentdetailsDialog,batchConfirmationPaymens },
data() {
return {
queryParams: {
@@ -103,6 +112,7 @@ export default {
// 是否显示弹出层
open: false,
openPay: false,
batchVisable:false,
// 弹出层内容
form: {},
// 校验表单
@@ -182,6 +192,7 @@ export default {
},
// 缴费确认
paymentconfirmationRow(row) {
console.log(row)
// console.log("缴费确认", row);
this.getDetail({ id: row.id });
this.openDialog = true;
@@ -201,6 +212,14 @@ export default {
// 关闭弹窗
cancelpaymentdetails() {
this.openDialog = false;
},
// 批量缴费
batchConfirmation(){
this.batchVisable = true;
},
// 批量确认缴费关闭
batchOperate(){
this.batchVisable = false;
},
/** 查询详情 */
getDetail(parms) {
+21 -4
View File
@@ -122,7 +122,12 @@
</el-col>
<el-col :span="12">
<el-form-item label="归属部门" prop="deptId">
<treeselect v-model="form.deptId" :options="deptOptions" :show-count="true" placeholder="请选择归属部门" />
<treeselect v-model="form.deptId" :options="deptOptions" :show-count="true" placeholder="请选择归属部门">
<el-tooltip slot="option-label" slot-scope="{node, shouldShowCount, count,labelClassName, countClassName}"
:content="node.label" :class="labelClassName" placement="top-start">
<span>{{ node.label }}</span>
</el-tooltip>
</treeselect>
</el-form-item>
</el-col>
</el-row>
@@ -189,7 +194,7 @@
<el-row>
<el-col :span="24">
<el-form-item label="身份证号码" prop="idCard">
<el-input v-model="form.idCard" placeholder="请输入身份证号码"/>
<el-input v-model="form.idCard" placeholder="请输入身份证号码" />
</el-form-item>
</el-col>
</el-row>
@@ -327,7 +332,7 @@ export default {
{ min: 5, max: 20, message: '用户密码长度必须介于 5 和 20 之间', trigger: 'blur' }
],
email: [
{
{
required: true,
message: '邮箱不能为空',
trigger: 'blur',
@@ -581,4 +586,16 @@ export default {
}
}
};
</script>
</script>
<style lang="scss" scoped>
.head-container{
width:220px;
::v-deep .el-tree-node {
white-space: normal;
.el-tree-node__content {
height: 100%;
align-items: start;
}
}
}
</style>
+3 -2
View File
@@ -12,9 +12,10 @@ const name = process.env.VUE_APP_TITLE || '智慧仲裁管理系统' // 网页
const port = process.env.port || process.env.npm_config_port || 80 // 端口
const API = 'http://121.40.189.20:9001' //生产
// const API = 'http://121.40.189.20:8001' //测试
// const API = 'http://192.168.3.18:9001' //B
// const API = 'http://121.40.189.20:8001' //测试
// const API = 'http://172.16.1.26:8001' //Bs
// const API = 'http://192.168.3.77:9001' //Q
// const API = 'http://172.16.0.241:8001' //W
// vue.config.js 配置说明
//官方vue.config.js 参考文档 https://cli.vuejs.org/zh/config/#css-loaderoptions