应用层PC端前端服务

batchPrinting.vue 6.3KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164
  1. <template>
  2. <!-- 批量用印 -->
  3. <div>
  4. <el-dialog title="批量用印" width="60%" :visible="printingVisable" @close="cancel" center :distroy-on-close="true">
  5. <!-- 查询机构信息 -->
  6. <el-form ref="courtReviewform" :model="courtReviewform">
  7. <el-form-item
  8. label="查询机构:"
  9. prop="Arbitor"
  10. :rules="[
  11. {
  12. required: true,
  13. message: '查询机构不能为空',
  14. trigger: 'blur',
  15. },
  16. ]"
  17. >
  18. <el-select
  19. placeholder="请选择查询机构"
  20. @change="changeArbitor"
  21. v-model="courtReviewform.Arbitor"
  22. clearable
  23. >
  24. <el-option
  25. v-for="item in atoDataList"
  26. :key="item.id"
  27. :label="item.identifyName"
  28. :value="item.operPhone"
  29. ></el-option>
  30. </el-select>
  31. </el-form-item>
  32. </el-form>
  33. <el-table v-loading="loading" :data="dataList" style="width: 100%" @selection-change="handleSelectionChange">
  34. <el-table-column type="selection">
  35. </el-table-column>
  36. <el-table-column label="序号" type="index" align="center">
  37. <template slot-scope="scope">
  38. <span>{{
  39. (queryParamsData.pageNum - 1) * queryParamsData.pageSize + scope.$index + 1
  40. }}</span>
  41. </template>
  42. </el-table-column>
  43. <el-table-column label="案件编号" prop="caseNum" align="center" :show-overflow-tooltip="true" />
  44. <el-table-column label="申请人" align="center" prop="applicantName" :show-overflow-tooltip="true" />
  45. <el-table-column label="案件标的" align="center" prop="caseSubjectAmount"/>
  46. <el-table-column label="仲裁方式" align="center" prop="arbitratMethodName" :show-overflow-tooltip="true" />
  47. <!-- 仲裁员 -->
  48. <el-table-column label="仲裁员" align="center" prop="arbitratorName" />
  49. <!-- 开庭日期 -->
  50. <el-table-column label="开庭日期" align="center" prop="hearDate" :show-overflow-tooltip="true" />
  51. <el-table-column label="案件状态" align="center" prop="caseStatusName">
  52. <template slot-scope="scope">
  53. <el-tag type="success">{{ scope.row.caseStatusName }}</el-tag>
  54. </template>
  55. </el-table-column>
  56. </el-table>
  57. <pagination :total="total" :page.sync="queryParamsData.pageNum"
  58. :limit.sync="queryParamsData.pageSize" />
  59. <div slot="footer" class="dialog-footer">
  60. <el-button @click="cancel" class="endbutton"><span>取 消</span></el-button>
  61. <el-button type="primary" class="endbutton" :disabled="dataList.length == 0 || batchData.length == 0" @click="confirmSeals" :loading="loadingSubmit"><span>确认用印</span></el-button>
  62. </div>
  63. </el-dialog>
  64. </div>
  65. </template>
  66. <script>
  67. import {selectBatchSealUrl,pageSignAdjudicate} from '@/api/caseAccess/caseEntry'
  68. import {deptIdentifyList} from '@/api/officialSeal/officialSeal'
  69. export default {
  70. props:["printingVisable"],
  71. data() {
  72. return {
  73. // 遮罩层
  74. loading: true,
  75. loadingSubmit: false,
  76. // 总条数
  77. total:0,
  78. // 查询参数
  79. queryParamsData: {
  80. caseStatus: 14,
  81. pageNum: 1,
  82. pageSize: 10,
  83. },
  84. // 表格数据
  85. dataList: [],
  86. batchData: [],
  87. atoDataList:[],
  88. courtReviewform: {},
  89. Arbitor: "",
  90. paramsdata:{
  91. ids:[],
  92. psnAccount:""
  93. },
  94. }
  95. },
  96. watch: {
  97. printingVisable(val) {
  98. if (val) {
  99. this.getBatchPrinting(this.queryParamsData)
  100. this.getarbitrAtor()
  101. }
  102. }
  103. },
  104. created(){
  105. this.getBatchPrinting(this.queryParamsData)
  106. // this.getarbitrAtor()
  107. },
  108. methods:{
  109. // 列表查询
  110. getBatchPrinting(val){
  111. this.loading = true;
  112. pageSignAdjudicate(val).then(res=>{
  113. this.dataList = res.rows
  114. this.total = res.total;
  115. this.loading = false;
  116. })
  117. },
  118. // 选择勾选框
  119. handleSelectionChange(val){
  120. this.batchData = [];
  121. val.forEach(item => {
  122. this.batchData.push(item.signFlowId)
  123. this.paramsdata.ids = this.batchData
  124. })
  125. },
  126. // 查询机构信息
  127. getarbitrAtor() {
  128. this.atoDataList =[]
  129. deptIdentifyList({}).then((res) => {
  130. console.log(res)
  131. this.atoDataList = res.rows;
  132. // this.total = res.total;
  133. });
  134. },
  135. // 下拉获取电话号码
  136. changeArbitor(val){
  137. this.paramsdata.psnAccount = val
  138. },
  139. // 确认用印
  140. confirmSeals(){
  141. this.$refs["courtReviewform"].validate((valid) => {
  142. if (valid) {
  143. this.loadingSubmit = true;
  144. selectBatchSealUrl(this.paramsdata).then((res) => {
  145. this.$modal.msgSuccess("确认成功");
  146. this.cancel();
  147. this.getBatchPrinting(this.queryParamsData)
  148. window.open(res.data.signUrl)
  149. this.loadingSubmit = false;
  150. // this.$emit("getcaseApply", this.queryParams);
  151. })
  152. .catch((err) => {
  153. this.loadingSubmit = false;
  154. });
  155. }
  156. });
  157. },
  158. cancel() {
  159. this.$emit("printingOperate");
  160. },
  161. }
  162. }
  163. </script>