应用层PC端前端服务

caseList.vue 34KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881
  1. <template>
  2. <div class="app-container">
  3. <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="98px">
  4. <el-form-item label="案件编号" prop="caseNum">
  5. <el-input v-model="queryParams.caseNum" placeholder="请输入案件编号" clearable @keyup.enter.native="handleQuery" />
  6. </el-form-item>
  7. <el-form-item label="申请人" prop="applicantName">
  8. <!-- <el-input
  9. v-model="queryParams.applicantName"
  10. placeholder="请输入机构名称"
  11. clearable
  12. @keyup.enter.native="handleQuery"
  13. /> -->
  14. <el-cascader v-model="queryParams.nameId" :options="options" @change="changeDept" :props="{ checkStrictly: true }"
  15. clearable></el-cascader>
  16. </el-form-item>
  17. <el-form-item label="案件状态" prop="caseStatus">
  18. <el-select :disabled="caseStatusType" v-model="queryParams.caseStatus" placeholder="请选择案件状态" clearable
  19. @keyup.enter.native="handleQuery">
  20. <el-option v-for="dict in caseStatus" :key="dict.dictValue" :label="dict.dictLabel"
  21. :value="dict.dictValue"></el-option>
  22. </el-select>
  23. </el-form-item>
  24. <!-- <el-form-item label="是否完成" prop="selectCaseStatus">
  25. <el-select v-model="queryParams.selectCaseStatus" placeholder="请选择状态" clearable @keyup.enter.native="handleQuery">
  26. <el-option v-for="dict in selectCaseStatusList" :key="dict.value" :label="dict.label"
  27. :value="dict.value"></el-option>
  28. </el-select>
  29. </el-form-item> -->
  30. <!-- <el-form-item label="开庭日期" prop="hearDate">
  31. <el-date-picker
  32. v-model="queryParams.hearDate"
  33. type="daterange"
  34. range-separator="至"
  35. start-placeholder="开始日期"
  36. end-placeholder="结束日期"
  37. >
  38. </el-date-picker>
  39. </el-form-item> -->
  40. <el-form-item>
  41. <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
  42. <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
  43. </el-form-item>
  44. </el-form>
  45. <el-row :gutter="10" class="mb8">
  46. <el-col :span="1.5">
  47. <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="filingApplication"
  48. v-hasPermi="['caseManagement:list:add']">案件录入</el-button>
  49. <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="compressedPackages"
  50. v-hasPermi="['caseManagement:list:zip']"
  51. >案件压缩包导入</el-button>
  52. <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="batchApplication"
  53. v-hasPermi="['caseManagement:list:import']">案件批量导入</el-button>
  54. <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="operateClick(0)"
  55. v-hasPermi="['caseManagement:list:Batchsubmit']">案件批量提交</el-button>
  56. <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="operateClick(1)"
  57. v-hasPermi="['caseManagement:list:delete']">案件批量删除</el-button>
  58. <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="operateClick(2)"
  59. v-hasPermi="['caseManagement:list:check']">案件批量立案审查</el-button>
  60. <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="operateClick(4)"
  61. v-hasPermi="['caseManagement:list:Batchgeneration']">批量生成裁决书</el-button>
  62. <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="operateClick(6)"
  63. v-hasPermi="['caseManagement:list:pay']">批量缴费</el-button>
  64. </el-col>
  65. </el-row>
  66. <el-table v-loading="loading" :data="dataList" style="width: 100%" :row-class-name="tableRowClassName" class="pendingTrial">
  67. <el-table-column type="selection">
  68. </el-table-column>
  69. <el-table-column label="序号" type="index" align="center">
  70. <template slot-scope="scope">
  71. <span>{{
  72. (queryParams.pageNum - 1) * queryParams.pageSize + scope.$index + 1
  73. }}</span>
  74. </template>
  75. </el-table-column>
  76. <el-table-column label="案件编号" align="center" prop="caseNum" :show-overflow-tooltip="true" />
  77. <el-table-column label="申请人" align="center" prop="applicantName" :show-overflow-tooltip="true" />
  78. <el-table-column label="案件标的" align="center" prop="caseSubjectAmount" />
  79. <el-table-column label="仲裁方式" align="center" prop="arbitratMethodName" :show-overflow-tooltip="true" />
  80. <!-- 仲裁员 -->
  81. <el-table-column label="仲裁员" align="center" prop="arbitratorName" />
  82. <!-- 开庭日期 -->
  83. <el-table-column label="开庭日期" align="center" prop="hearDate" :show-overflow-tooltip="true" />
  84. <el-table-column label="案件状态" align="center" prop="caseStatusName">
  85. <template slot-scope="scope">
  86. <el-tag type="success">{{ scope.row.caseStatusName }}</el-tag>
  87. </template>
  88. </el-table-column>
  89. <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
  90. <template slot-scope="scope">
  91. <el-button size="mini" type="text" icon="el-icon-zoom-in" @click="detailRow(scope.row)">详情</el-button>
  92. <el-button size="mini" type="text" icon="el-icon-zoom-in" @click="viewProcess(scope.row)">查看流程</el-button>
  93. <!-- 案件日志 -->
  94. <el-button size="mini" type="text" icon="el-icon-notebook-2" @click="caselogRow(scope.row)">案件日志</el-button>
  95. <el-button size="mini" type="text" icon="el-icon-edit" @click="editRow(scope.row)" v-if="(scope.row.caseStatus < 10 && scope.row.updateSubmitStatus !== 1) &&
  96. checkPermi(['caseManagement:list:update']) && btnStatus
  97. ">修改</el-button>
  98. <!-- 撤销修改 -->
  99. <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>
  100. <el-button size="mini" type="text" icon="el-icon-check" @click="onsubmitRow(scope.row)" v-if="scope.row.caseStatus == 0 &&
  101. checkPermi(['caseManagement:list:submit']) && btnStatus
  102. ">提交</el-button>
  103. <el-button size="mini" type="text" icon="el-icon-delete" @click="deleteRow(scope.row)" v-if="scope.row.caseStatus == 0 &&
  104. checkPermi(['caseManagement:list:delete']) && btnStatus
  105. ">删除</el-button>
  106. <el-button size="mini" type="text" icon="el-icon-view" @click="filingreviewRow(scope.row)" v-if="scope.row.caseStatus == 1 &&
  107. checkPermi(['caseManagement:list:check']) && btnStatus
  108. ">立案审查</el-button>
  109. <!-- <el-button size="mini" type="text" icon="el-icon-tickets" @click="payStatus(scope.row)"
  110. v-if="scope.row.caseStatus == 2" v-hasPermi="['caseManagement:list:pay']">缴费</el-button> -->
  111. <el-button size="mini" type="text" icon="el-icon-tickets" @click="payStatus(scope.row)" v-if="scope.row.caseStatus == 2 &&
  112. checkPermi(['caseManagement:list:pay']) && btnStatus
  113. ">缴费</el-button>
  114. <el-button size="mini" type="text" icon="el-icon-tickets" @click="evidenceListS(scope.row)" >证据清单</el-button>
  115. <!-- <el-button
  116. size="mini"
  117. type="text"
  118. icon="el-icon-data-analysis"
  119. @click="formationcourtRow(scope.row)"
  120. v-hasPermi="['monitor:online:forceLogout']"
  121. >组庭</el-button
  122. > -->
  123. <!-- 审核修改,秘书角色 -->
  124. <el-button size="mini" type="text" icon="el-icon-s-check" @click="reviewCase(scope.row)" v-if="scope.row.updateSubmitStatus == 1 && checkPermi(['caseManagement:list:reviewCase'])">审核修改</el-button>
  125. <!-- 审核撤销,秘书角色 -->
  126. <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>
  127. <el-button size="mini" type="text" icon="el-icon-s-check" @click="courtconfirmationRow(scope.row)" v-if="scope.row.caseStatus == 6 &&
  128. checkPermi(['caseManagement:list:confirmgroup']) && btnStatus
  129. ">组庭确认</el-button>
  130. <el-button size="mini" type="text" icon="el-icon-check" @click="courtreviewRow(scope.row)" v-if="scope.row.caseStatus == 5 &&
  131. checkPermi(['caseManagement:list:checkgroup']) && btnStatus
  132. ">组庭审核</el-button>
  133. <el-button size="mini" type="text" icon="el-icon-sort" @click="choosetrialmethodRow(scope.row)" v-if="scope.row.caseStatus == 7 &&
  134. checkPermi(['caseManagement:list:checkarbitrationway']) && btnStatus
  135. ">审核仲裁方式</el-button>
  136. <el-button size="mini" type="text" icon="el-icon-edit-outline" @click="adjudicaterecordRow(scope.row)" v-if="scope.row.caseStatus == 9 &&
  137. scope.row.arbitratMethod == 2 &&
  138. checkPermi(['caseManagement:list:hear']) && btnStatus
  139. ">书面审理</el-button>
  140. <!-- v-hasPermi="['caseManagement:list:hear']" -->
  141. <el-button size="mini" type="text" icon="el-icon-service" @click="trialcourtRow(scope.row)" v-if="scope.row.caseStatus == 8 &&
  142. scope.row.arbitratMethod == 1 &&
  143. checkPermi(['caseManagement:list:hear']) && btnStatus
  144. ">开庭审理</el-button>
  145. <!-- <el-button size="mini" type="text" icon="el-icon-edit" v-if="scope.row.caseStatus < 8 &&
  146. checkPermi(['caseManagement:list:evidenceUpdate']) && btnStatus"
  147. @click="evidenceUpload(scope.row)">证据修改</el-button> -->
  148. <el-button size="mini" type="text" icon="el-icon-edit" v-if="(scope.row.caseStatus < 10 && scope.row.caseStatus != 2 && scope.row.caseStatus != 0) &&
  149. checkPermi(['caseManagement:list:evidenceUpdate']) && btnStatus"
  150. @click="evidenceUpload(scope.row)">证据修改</el-button>
  151. <el-button size="mini" type="text" icon="el-icon-edit" v-if="scope.row.caseStatus == 31 && btnStatus && checkPermi(['caseManagement:list:timer'])"
  152. @click="timeUpdata(scope.row)">开庭时间</el-button>
  153. <el-button size="mini" type="text" icon="el-icon-lock"
  154. v-if="checkPermi(['caseManagement:list:lock']) && scope.row.lockStatus == 0 && btnStatus"
  155. @click="lockClick(scope.row)">锁定</el-button>
  156. <el-button size="mini" type="text" icon="el-icon-unlock"
  157. v-if="checkPermi(['caseManagement:list:lock']) && scope.row.lockStatus == 1 && btnStatus"
  158. @click="ulockClick(scope.row)">解锁</el-button>
  159. <!-- 暂时隐藏后期可能会放其他地方 -->
  160. <!-- <el-button v-if="checkPermi(['caseManagement:list:listEvidence']) && scope.row.caseStatus <= 1 && btnStatus"
  161. size="mini" type="text" icon="el-icon-upload" @click="uploadCase(scope.row)">上传证据目录</el-button> -->
  162. <!-- <el-button
  163. size="mini"
  164. type="text"
  165. icon="el-icon-document"
  166. @click="generateawardRow(scope.row)"
  167. v-if="
  168. scope.row.caseStatus == 10 &&
  169. checkPermi(['caseManagement:list:createaward'])
  170. "
  171. >生成裁决书</el-button
  172. > -->
  173. </template>
  174. </el-table-column>
  175. </el-table>
  176. <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
  177. @pagination="getcaseApply(queryParams)" />
  178. <!-- 立案申请弹框 -->
  179. <caseentryDialog :visible="visible" @cancel="cancel" :form="form" :queryParams="queryParams"
  180. :dialogtitle="dialogtitle" :getcaseApply="getcaseApply" :flag="flag" :caseAttachList="caseAttachList"
  181. :initpaymentArr="initpaymentArr" :initpaymentArr1="initpaymentArr1" :columnValues="columnValues"></caseentryDialog>
  182. <!-- 批量申请弹框 openbatch-->
  183. <batchDialog :openbatch="openbatch" :queryParams="queryParams" @cancelBatch="cancelBatch"
  184. :getcaseApply="getcaseApply"></batchDialog>
  185. <!-- 立案审查页面 -->
  186. <filingreviewDialog :showfilingreview="showfilingreview" :filingreviewdata="filingreviewdata"
  187. :queryParams="queryParams" @getcaseApply="getcaseApply" @cancelFilingreview="cancelFilingreview">
  188. </filingreviewDialog>
  189. <!-- 组庭页面---改为组庭审核 -->
  190. <formateCourtDialog :showformateCourt="showformateCourt" @cancelcourtDialog="cancelcourtDialog"
  191. :queryParams="queryParams" :formateCourtData="formateCourtData" @getcaseApply="getcaseApply"></formateCourtDialog>
  192. <!-- 组庭审核--改组庭确认 -->
  193. <courtReviewDialog :showcourtReview="showcourtReview" :form="form" :queryParams="queryParams"
  194. @cancelcourtReview="cancelcourtReview" @getcaseApply="getcaseApply"></courtReviewDialog>
  195. <!-- 审核仲裁方式 -->
  196. <choosetrialmethodDaiog :showchoosetrialmethod="showchoosetrialmethod" :choosetrialmethodata="choosetrialmethodata"
  197. :queryParams="queryParams" @getcaseApply="getcaseApply" @cancelshowchoosetrialMethod="cancelshowchoosetrialMethod">
  198. </choosetrialmethodDaiog>
  199. <!-- 书面审理 -->
  200. <adjudicaterecordDialog :showadjudicaterecord="showadjudicaterecord" :form="form" :adjudicatename="adjudicatename"
  201. :queryParams="queryParams" @canceladjudicaterecord="canceladjudicaterecord" @getcaseApply="getcaseApply">
  202. </adjudicaterecordDialog>
  203. <!-- 开庭审理 -->
  204. <trialincourtDialog :showtrialincourt="showtrialincourt" :adjudicatename="adjudicatename" :form="form"
  205. :queryParams="queryParams" @getcaseApply="getcaseApply" @canceltrialincourt="canceltrialincourt">
  206. </trialincourtDialog>
  207. <!-- 缴费 -->
  208. <payDialog :openPay="openPay" :payTitle="payTitle" :form="form" :payForm="payForm" :queryParams="queryParams"
  209. @getcaseApply="getcaseApply" @paycancelRow="paycancelRow" :payId="payId"></payDialog>
  210. <!-- 案件日志 -->
  211. <caselogDialog :showcaseLog="showcaseLog" @cancelcaseLog="cancelcaseLog" :flagLoading="flagLoading"
  212. :caselogDataArr="caselogDataArr"></caselogDialog>
  213. <!-- 案件流程 -->
  214. <viewprocessDialog :processVisable="processVisable" @cancelViewProcess="cancelViewProcess" :processData="processData">
  215. </viewprocessDialog>
  216. <!-- 证据修改 -->
  217. <evidenceDialog :evidenceVisable="evidenceVisable" @cancelEvidence="cancelEvidence" :evidenceData="evidenceData">
  218. </evidenceDialog>
  219. <!-- 开庭时间修改 -->
  220. <timeDialog :timeVisable="timeVisable" @getcaseApply="getcaseApply" @cancelTime="cancelTime" :timeData="timeData"
  221. :queryParams="queryParams">
  222. </timeDialog>
  223. <!-- 批量操作弹窗 -->
  224. <operateDialog :queryParams="queryParams" :operateStatus="operateStatus" :operateVisable="operateVisable"
  225. @getcaseApply="getcaseApply" :operateTitle="operateTitle" @cancelOperate="cancelOperate" :operateData="operateData">
  226. </operateDialog>
  227. <!-- 上传证据目录弹窗 -->
  228. <uploadCaseDialog :uploadCaseVisable="uploadCaseVisable" @uploadCaseCancel="uploadCaseCancel"
  229. :uploadCaseData="uploadCaseData">
  230. </uploadCaseDialog>
  231. <!-- 秘书审核修改页面 -->
  232. <caseentryExamineDialog :dialogtitle="dialogtitle" :caseentryExamineVisible="caseentryExamineVisible" :queryParams="queryParams" :afterColumnValues="afterColumnValues"
  233. :getcaseApply="getcaseApply"
  234. @caseentryExamineCancel="caseentryExamineCancel" :caseentryExamineData="caseentryExamineData" :caseentryExamineDataAll="caseentryExamineDataAll"></caseentryExamineDialog>
  235. <caseCompressionPackage :openCompressedPackages="openCompressedPackages" :queryParams="queryParams" @cancelCompreess="cancelCompreess"
  236. :getcaseApply="getcaseApply">
  237. </caseCompressionPackage>
  238. <!-- 证据清单 -->
  239. <evidenceList :evidenceListD ="evidenceListD" @cancelevidenceList="cancelevidenceList" :caseAttachListR ="caseAttachListR"></evidenceList>
  240. </div>
  241. </template>
  242. <script>
  243. import caseentryDialog from "./components/caseentryDialog";
  244. import batchDialog from "./components/batchDialog";
  245. import formateCourtDialog from "./components/formateCourtDialog.vue";
  246. import courtReviewDialog from "./components/courtReviewDialog.vue";
  247. import choosetrialmethodDaiog from "./components/choosetrialmethodDaiog.vue";
  248. import adjudicaterecordDialog from "./components/adjudicaterecordDialog.vue";
  249. import trialincourtDialog from "./components/trialincourtDialog.vue";
  250. import payDialog from "./components/payDialog.vue";
  251. import filingreviewDialog from "./components/filingreviewDialog.vue";
  252. import caselogDialog from "./components/caselogDialog.vue";
  253. import viewprocessDialog from "./components/viewprocessDialog.vue";
  254. import evidenceDialog from './components/evidenceDialog.vue';
  255. import timeDialog from './components/timeDialog.vue';
  256. import operateDialog from './components/operateDialog.vue';
  257. import uploadCaseDialog from './components/uploadCaseDialog.vue';
  258. import caseCompressionPackage from './components/caseCompressionPackage.vue';
  259. import evidenceList from './components/evidenceList.vue'
  260. // 秘书审核页面
  261. import caseentryExamineDialog from './components/caseentryExamine.vue';
  262. import { caseApplicationDetail } from "@/api/pay/pay";
  263. import {
  264. caseApply,
  265. removeCaseApply,
  266. submitCaseApply,
  267. selectCaseApply,
  268. updateCaseLockStatus
  269. } from "@/api/caseAccess/caseEntry";
  270. import { listDept } from "@/api/system/dept";
  271. import {
  272. document,
  273. caseLogRecordList,
  274. revoke,
  275. selectCompareCase,
  276. updateAudit
  277. } from "@/api/caseManagement/caseManagement";
  278. import { getDicts } from '@/api/system/dict/data.js';
  279. export default {
  280. name: "caseList",
  281. // dicts: ["case_status"],
  282. components: {
  283. caseentryDialog,
  284. batchDialog,
  285. formateCourtDialog,
  286. courtReviewDialog,
  287. choosetrialmethodDaiog,
  288. adjudicaterecordDialog,
  289. trialincourtDialog,
  290. payDialog,
  291. filingreviewDialog,
  292. caselogDialog,
  293. viewprocessDialog,
  294. evidenceDialog,
  295. timeDialog,
  296. operateDialog,
  297. uploadCaseDialog,
  298. caseentryExamineDialog,
  299. caseCompressionPackage,
  300. evidenceList
  301. },
  302. data() {
  303. return {
  304. // 遮罩层
  305. loading: true,
  306. // 总条数
  307. total: 0,
  308. isapply: "申请人:",
  309. // 表格数据
  310. dataList: [],
  311. // 抓取数据
  312. columnValues:[],
  313. // 审核修改抓取数据
  314. afterColumnValues:[],
  315. // 查询参数
  316. queryParams: {
  317. caseNum: undefined,
  318. // caseStatusList: [0, 1, 2, 5, 6, 7, 8, 9, 10, 16],
  319. caseStatusList: [0, 1, 2, 5, 6, 7, 8, 9, 10, 31],
  320. // hearDate: "",
  321. caseStatus: null,
  322. applicantName: "",
  323. nameId: "",
  324. pageNum: 1,
  325. pageSize: 10,
  326. },
  327. dialogtitle: "", //弹框标题
  328. visible: false, //申请弹框控制
  329. form: {},
  330. starttime: "", //开始时间
  331. endtime: "", //结束时间
  332. formData: {},
  333. flag: "-1",
  334. initpaymentArr: [],
  335. initpaymentArr1: [],
  336. showfilingreview: false, //立案申查弹框控制
  337. filingreviewdata: {}, //立案审查传输数据
  338. openbatch: false, // 批量申请弹框
  339. openCompressedPackages:false,//案件压缩包导入
  340. formateCourtData: {}, //组庭
  341. showformateCourt: false, //组庭界面显示
  342. showcourtReview: false, //组庭审核页面
  343. showchoosetrialmethod: false, //选择仲裁方式页面
  344. choosetrialmethodata: {},
  345. showadjudicaterecord: false, //书面审理弹框
  346. adjudicatename: {}, //书面仲裁(被)申请人姓名
  347. showtrialincourt: false, //开庭审理
  348. openPay: false, //缴费弹框
  349. processVisable: false,//案件流程弹窗
  350. evidenceVisable: false,//修改证据弹窗
  351. evidenceData: {},
  352. payTitle: "",
  353. payForm: {},
  354. caseAttachList: [], //案件质证资料
  355. showcaseLog: false, //案件日志弹框显示
  356. evidenceListD:false,//证据清单弹框显示
  357. caseAttachListR:[], //证据清单
  358. flagLoading: true, //案件日志弹框loading
  359. caselogDataArr: [],
  360. options: [], //机构数据
  361. payId: null,
  362. caseStatus: [],
  363. processData: {},
  364. timeVisable: false,
  365. timeData: {},
  366. operateVisable: false,
  367. operateData: {},
  368. operateTitle: "",
  369. operateStatus: 0,
  370. uploadCaseVisable: false,
  371. caseentryExamineVisible: false,
  372. caseentryExamineData: {},
  373. caseentryExamineDataAll: {},
  374. uploadCaseData: {},
  375. selectCaseStatusList: [
  376. {
  377. label: "待办案件",
  378. value: 0
  379. },
  380. {
  381. label: "已办案件",
  382. value: 1
  383. }
  384. ],
  385. caseStatusType: false,
  386. btnStatus: true,
  387. };
  388. },
  389. created() {
  390. getDicts("case_status").then(res => {
  391. this.caseStatus = res.data;
  392. let params = this.$route.params.status;
  393. if (params >= 0) {
  394. this.queryParams.caseStatus = params;
  395. }
  396. this.getcaseApply(this.queryParams);
  397. })
  398. // this.getcaseApply(this.queryParams);
  399. this.getInstitution();
  400. },
  401. methods: {
  402. cancel() {
  403. this.visible = false;
  404. },
  405. cancelBatch() {
  406. this.openbatch = false;
  407. },
  408. cancelCompreess(){
  409. this.openCompressedPackages = false;
  410. },
  411. cancelTime() {
  412. this.timeVisable = false;
  413. },
  414. cancelOperate() {
  415. this.operateVisable = false;
  416. },
  417. uploadCaseCancel() {
  418. this.uploadCaseVisable = false;
  419. },
  420. // 上传证据目录弹窗
  421. uploadCase(row) {
  422. this.uploadCaseData = row;
  423. this.uploadCaseVisable = true;
  424. },
  425. // 批量操作弹窗
  426. operateClick(type) {
  427. this.operateVisable = true;
  428. if (type == 0) {
  429. this.operateTitle = '批量提交';
  430. this.operateStatus = 0;
  431. } else if (type == 1) {
  432. this.operateTitle = '批量删除';
  433. this.operateStatus = 1;
  434. } else if (type == 2) {
  435. this.operateTitle = '批量立案审查';
  436. this.operateStatus = 2;
  437. } else if (type == 4) {
  438. this.operateTitle = '批量生成裁决书';
  439. this.operateStatus = 4;
  440. } else if(type == 6){
  441. this.operateTitle = '批量缴费';
  442. this.operateStatus = 6;
  443. }
  444. },
  445. // 修改开庭时间
  446. timeUpdata(row) {
  447. this.timeData = row;
  448. this.timeVisable = true;
  449. },
  450. // 锁定案件
  451. lockClick(row) {
  452. this.$modal
  453. .confirm("是否锁定案件")
  454. .then(function () {
  455. return updateCaseLockStatus({ id: row.id, lockStatus: 1 });
  456. })
  457. .then((res) => {
  458. this.getcaseApply(this.queryParams);
  459. this.$modal.msgSuccess("锁定成功");
  460. })
  461. .catch(() => { });
  462. },
  463. // 解锁案件
  464. ulockClick(row) {
  465. this.$modal
  466. .confirm("是否解锁案件")
  467. .then(function () {
  468. return updateCaseLockStatus({ id: row.id, lockStatus: 0 });
  469. })
  470. .then((res) => {
  471. this.getcaseApply(this.queryParams);
  472. this.$modal.msgSuccess("解锁成功");
  473. })
  474. .catch(() => { });
  475. },
  476. // 修改证据
  477. evidenceUpload(row) {
  478. this.evidenceData = row;
  479. this.evidenceVisable = true;
  480. },
  481. // 取消弹窗(证据弹窗)
  482. cancelEvidence() {
  483. this.evidenceVisable = false;
  484. },
  485. // 查看流程
  486. viewProcess(row) {
  487. this.processVisable = true;
  488. this.processData = row;
  489. },
  490. // 机构发生变化
  491. changeDept(data) {
  492. this.queryParams.nameId = data[0];
  493. },
  494. // 获取机构数据
  495. getInstitution() {
  496. listDept().then((res) => {
  497. res.data.forEach((item) => {
  498. item.value = item.deptId;
  499. item.label = item.deptName;
  500. });
  501. this.options = this.handleTree(res.data, "deptId");
  502. });
  503. },
  504. /** 查询列表 */
  505. getcaseApply(val) {
  506. this.loading = true;
  507. caseApply(val).then((response) => {
  508. this.dataList = response.rows;
  509. this.total = response.total;
  510. this.loading = false;
  511. });
  512. },
  513. /** 搜索按钮操作 */
  514. handleQuery() {
  515. this.queryParams.caseStatusList = [];
  516. if (!this.queryParams.caseStatus) {
  517. this.queryParams.caseStatusList = [0, 1, 2, 5, 6, 7, 8, 9, 10, 31]
  518. }
  519. if (this.queryParams.selectCaseStatus == 1) {
  520. this.queryParams.caseStatus = null;
  521. this.caseStatusType = true;
  522. this.btnStatus = false;
  523. } else if (this.queryParams.selectCaseStatus == 0) {
  524. this.caseStatusType = false;
  525. this.btnStatus = true;
  526. }
  527. this.queryParams.pageNum = 1;
  528. this.getcaseApply(this.queryParams);
  529. },
  530. /** 重置按钮操作 */
  531. resetQuery() {
  532. this.resetForm("queryForm");
  533. (this.queryParams.caseStatusList = [0, 1, 2, 5, 6, 7, 8, 9, 10, 31]),
  534. (this.queryParams.applicantName = ""),
  535. (this.queryParams.nameId = ""),
  536. this.getcaseApply(this.queryParams);
  537. },
  538. // 案件录入
  539. filingApplication() {
  540. this.form = {};
  541. this.initpaymentArr = [
  542. {
  543. identityType: 1,
  544. name: "",
  545. identityNum: "",
  546. contactTelphone: "",
  547. workAddress: "",
  548. workTelphone: "",
  549. contactAddress: "",
  550. nameAgent: "",
  551. contactTelphoneAgent: "",
  552. contactAddressAgent: "",
  553. },
  554. ];
  555. this.initpaymentArr1 = [
  556. {
  557. identityType: 2,
  558. name: "",
  559. identityNum: "",
  560. contactTelphone: "",
  561. workAddress: "",
  562. workTelphone: "",
  563. contactAddress: "",
  564. nameAgent: "",
  565. contactTelphoneAgent: "",
  566. contactAddressAgent: "",
  567. },
  568. ];
  569. this.visible = true;
  570. this.dialogtitle = "立案申请";
  571. this.flag = "2";
  572. },
  573. // 批量批量录入
  574. batchApplication() {
  575. this.openbatch = true;
  576. },
  577. //案件导入压缩包
  578. compressedPackages(){
  579. this.openCompressedPackages = true;
  580. },
  581. // 详情
  582. detailRow(row) {
  583. this.flag = "0";
  584. this.form = row;
  585. this.visible = true;
  586. this.dialogtitle = "立案详情";
  587. this.getInfo(row);
  588. },
  589. // 案件日志
  590. caselogRow(row) {
  591. this.showcaseLog = true;
  592. this.caseLogRecordListFn(row);
  593. },
  594. // 证据清单
  595. evidenceListS(row){
  596. this.evidenceListD = true;
  597. this.getInfo(row);
  598. },
  599. // 查询案件日志信息
  600. caseLogRecordListFn(val) {
  601. this.flagLoading = true;
  602. let params = {
  603. caseAppliId: val.id,
  604. };
  605. caseLogRecordList(params).then((res) => {
  606. this.caselogDataArr = res.data;
  607. this.flagLoading = false;
  608. });
  609. },
  610. // 关闭案件日志
  611. cancelcaseLog() {
  612. this.showcaseLog = false;
  613. },
  614. //关闭案件流程
  615. cancelViewProcess() {
  616. this.processVisable = false;
  617. },
  618. // 关闭案件详情
  619. cancelevidenceList(){
  620. this.evidenceListD = false;
  621. },
  622. // 修改
  623. editRow(row) {
  624. this.flag = "1";
  625. this.form = row;
  626. this.visible = true;
  627. this.dialogtitle = "立案修改";
  628. this.getInfo(row);
  629. },
  630. // 列表提交立案
  631. onsubmitRow(row) {
  632. this.$modal
  633. .confirm("是否提交立案申请?")
  634. .then(function () {
  635. // return submitCaseApply({ id: row.id });
  636. return submitCaseApply({ ids: [row.id] });
  637. })
  638. .then(() => {
  639. this.getcaseApply(this.queryParams);
  640. this.$modal.msgSuccess("立案申请成功");
  641. })
  642. .catch(() => { });
  643. },
  644. // 立案审查
  645. filingreviewRow(row) {
  646. console.log(row, "立案审查");
  647. this.showfilingreview = true;
  648. this.filingreviewdata = row;
  649. },
  650. cancelFilingreview() {
  651. this.showfilingreview = false;
  652. },
  653. // 取消缴费
  654. paycancelRow(row) {
  655. this.openPay = false;
  656. },
  657. // 是否进行缴费
  658. payStatus(val) {
  659. this.getDetail({ id: val.id, version: val.version });
  660. this.payTitle = "缴费";
  661. this.openPay = true;
  662. this.payId = val.id;
  663. },
  664. getDetail(parms) {
  665. caseApplicationDetail(parms).then((res) => {
  666. if (res.data.caseStatus == 1) {
  667. res.data.caseStatusName = "待缴费";
  668. }
  669. this.form = res.data;
  670. console.log(this.form)
  671. this.payForm.feePayable = res.data.feePayable;
  672. this.payForm.caseId = res.data.id;
  673. });
  674. },
  675. // 组庭
  676. // formationcourtRow(row) {
  677. // console.log(row, "组庭");
  678. // this.formateCourtData = row;
  679. // this.showformateCourt = true;
  680. // },
  681. // 关闭组庭页面
  682. cancelcourtDialog() {
  683. this.showformateCourt = false;
  684. },
  685. // 审核案件 selectCompareCase caseentryExamineData
  686. reviewCase(row) {
  687. this.dialogtitle = "审核修改详情";
  688. this.getSelectCompareCase(row)
  689. },
  690. // 秘书审核修改页面 caseentryExamineVisible
  691. caseentryExamineCancel() {
  692. this.caseentryExamineVisible = false;
  693. },
  694. // 查询修改字段
  695. getSelectCompareCase(val) {
  696. let param = {
  697. caseId:val.id,
  698. version:val.version
  699. }
  700. selectCompareCase(param).then((res) => {
  701. this.afterColumnValues = res.data.afterCase.columnValues
  702. console.log(this.afterColumnValues+"8888888888")
  703. this.caseentryExamineData = res.data.afterCase
  704. this.caseentryExamineDataAll = res.data
  705. this.caseentryExamineVisible = true;
  706. })
  707. },
  708. // 审核撤销
  709. reviewRevocation(row) {
  710. this.caseentryExamineVisible = true;
  711. this.dialogtitle = "审核撤销";
  712. this.getSelectCompareCase(row)
  713. },
  714. // 组庭确认
  715. courtconfirmationRow(row) {
  716. // console.log(row, "组庭确认");
  717. this.showcourtReview = true;
  718. this.form = row;
  719. },
  720. // 组庭审核
  721. courtreviewRow(row) {
  722. // console.log(row, "组庭审核");
  723. this.formateCourtData = row;
  724. this.showformateCourt = true;
  725. },
  726. cancelcourtReview() {
  727. this.showcourtReview = false;
  728. },
  729. // 选择开庭方式改为审核仲裁方式
  730. choosetrialmethodRow(row) {
  731. // console.log(row, "审核仲裁方式");
  732. this.choosetrialmethodata = row;
  733. this.showchoosetrialmethod = true;
  734. },
  735. // 关闭审核仲裁方式
  736. cancelshowchoosetrialMethod() {
  737. this.showchoosetrialmethod = false;
  738. },
  739. // 书面审理
  740. adjudicaterecordRow(row) {
  741. // console.log(row, "书面审理");
  742. this.showadjudicaterecord = true;
  743. this.form = row;
  744. this.getInfo(row);
  745. },
  746. canceladjudicaterecord() {
  747. this.showadjudicaterecord = false;
  748. },
  749. // 开庭审理
  750. trialcourtRow(row) {
  751. console.log(row, "开庭审理");
  752. this.showtrialincourt = true;
  753. this.form = row;
  754. this.getInfo(row);
  755. },
  756. canceltrialincourt() {
  757. this.showtrialincourt = false;
  758. },
  759. // 生成裁决书 2023.10.15裁决书生成为自动,已合并如庭审提交
  760. // generateawardRow(row) {
  761. // console.log(row, "生成裁决书");
  762. // this.$modal
  763. // .confirm("确定生成裁决书吗?")
  764. // .then(function () {
  765. // return document({ id: row.id });
  766. // })
  767. // .then((res) => {
  768. // if (res.code == 200) {
  769. // this.getcaseApply(this.queryParams);
  770. // this.$modal.msgSuccess("裁决书生成成功");
  771. // }
  772. // })
  773. // .catch(() => {});
  774. // },
  775. // 归档
  776. fileRow(row) {
  777. console.log(row, "归档");
  778. },
  779. // 查找主体信息数据
  780. getInfo(row) {
  781. let params = {
  782. id: row.id,
  783. version: row.version
  784. }
  785. selectCaseApply(params).then((res) => {
  786. // 证据清单
  787. this.caseAttachListR = res.data.caseAttachList;
  788. // this.visible = true;
  789. // this.formData = res.data;
  790. this.form.caseName = res.data.caseName;
  791. this.adjudicatename = {
  792. applicantName: res.data.applicantName,
  793. respondentName: res.data.respondentName,
  794. feePayable: res.data.feePayable,
  795. hearDate: res.data.hearDate,
  796. arbitratorName: res.data.arbitratorName,
  797. caseAttachList: res.data.caseAttachList,
  798. };
  799. this.initpaymentArr = [];
  800. this.initpaymentArr1 = [];
  801. res.data.caseAffiliates.forEach((item) => {
  802. if (item.identityType == 1) {
  803. this.initpaymentArr.push(item);
  804. } else {
  805. this.initpaymentArr1.push(item);
  806. }
  807. });
  808. this.columnValues = res.data.columnValues;
  809. this.caseAttachList = res.data.caseAttachList;
  810. // console.log(this.caseAttachList,"caseAttachList")
  811. this.form.requestRule = res.data.requestRule;
  812. this.form.properPreser = res.data.properPreser;
  813. });
  814. },
  815. // 删除
  816. deleteRow(row) {
  817. // const id = row.id;
  818. this.$modal
  819. .confirm("是否确认删除?")
  820. .then(function () {
  821. // return removeCaseApply({ id: row.id });
  822. return removeCaseApply({ ids: [row.id] });
  823. })
  824. .then((res) => {
  825. this.getcaseApply(this.queryParams);
  826. this.$modal.msgSuccess("删除成功");
  827. })
  828. .catch(() => { });
  829. },
  830. // 申请人撤销修改 revoke
  831. undoRow(row) {
  832. if (row.updateSubmitStatus == 1) {
  833. this.$modal.confirm("是否确认撤销修改?").then(function () {
  834. return revoke({ caseId: row.id, version: row.version });
  835. }).then((res) => {
  836. if (res.code == 200) {
  837. this.getcaseApply(this.queryParams);
  838. this.$modal.msgSuccess("撤销成功");
  839. }
  840. })
  841. .catch(() => { });
  842. } else if (row.updateSubmitStatus == 3) {
  843. this.$modal.confirm("是否确认撤销已审核的修改?").then(function () {
  844. return revoke({ caseId: row.id, version: row.version });
  845. }).then((res) => {
  846. if (res.code == 200) {
  847. this.getcaseApply(this.queryParams);
  848. this.$modal.msgSuccess("撤销申请已提交,等待审核");
  849. }
  850. })
  851. .catch(() => { });
  852. }
  853. },
  854. // 表格显示高亮
  855. tableRowClassName(row){
  856. if(row.row.arbitratMethodName=="开庭审理"){
  857. return 'pendingTrial'
  858. }
  859. }
  860. },
  861. };
  862. </script>
  863. <style>
  864. /* // #formContainer {} */
  865. .el-table .pendingTrial {
  866. background:rgb(97, 224, 23);
  867. }
  868. </style>