Kaynağa Gözat

选择调解员,时间

Your Name 2 yıl önce
ebeveyn
işleme
89b5718794

+ 16
- 0
src/api/caseManagement/caseManagement.js Dosyayı Görüntüle

71
       method: "post",
71
       method: "post",
72
       data: data,
72
       data: data,
73
     });
73
     });
74
+  }
75
+  //获取调解员列表
76
+  export function listMediator(data) {
77
+    return request({
78
+      url: "caseApplication/listMediator",
79
+      method: "get",
80
+      params: data,
81
+    });
82
+  }
83
+//   确认仲裁员以及时间
84
+export function updateBooking(data) {
85
+    return request({
86
+      url: "/caseApplication/updateBooking",
87
+      method: "post",
88
+      data: data,
89
+    });
74
   }
90
   }

+ 26
- 1
src/views/caseManagement/caseList.vue Dosyayı Görüntüle

75
                     <el-button size="mini" type="text" icon="el-icon-edit"
75
                     <el-button size="mini" type="text" icon="el-icon-edit"
76
                         @click="evidenceUpload(scope.row)">证据修改</el-button>
76
                         @click="evidenceUpload(scope.row)">证据修改</el-button>
77
                     <el-button size="mini" type="text" icon="el-icon-tickets" @click="payStatus(scope.row)">缴费</el-button>
77
                     <el-button size="mini" type="text" icon="el-icon-tickets" @click="payStatus(scope.row)">缴费</el-button>
78
+                    <el-button size="mini" type="text" icon="el-icon-tickets" @click="selectMediator(scope.row)">预约时间</el-button>
78
                 </template>
79
                 </template>
79
             </el-table-column>
80
             </el-table-column>
80
         </el-table>
81
         </el-table>
102
         <paymentdetailsDialog :openDialog="openDialog" @cancelpaymentdetails="cancelpaymentdetails" :title="payTitle" :detailform="detailform" :flag="flag" :paymentConfirma="paymentConfirma" :getList="getList"></paymentdetailsDialog>
103
         <paymentdetailsDialog :openDialog="openDialog" @cancelpaymentdetails="cancelpaymentdetails" :title="payTitle" :detailform="detailform" :flag="flag" :paymentConfirma="paymentConfirma" :getList="getList"></paymentdetailsDialog>
103
         <!-- 案件受理 -->
104
         <!-- 案件受理 -->
104
         <caseAcceptance :showAcceptance="showAcceptance" @cancelAcceptance="cancelAcceptance" :caseAcceptanceData="caseAcceptanceData" :getList="getList"></caseAcceptance>
105
         <caseAcceptance :showAcceptance="showAcceptance" @cancelAcceptance="cancelAcceptance" :caseAcceptanceData="caseAcceptanceData" :getList="getList"></caseAcceptance>
106
+        <!-- 调解员弹窗 -->
107
+        <selectMediator  @cancelMediator="cancelMediator" :mediatorVisable="mediatorVisable" :mediatorData="mediatorData" :getList="getList" :queryParams="queryParams"></selectMediator>
105
     </div>
108
     </div>
106
 </template>
109
 </template>
107
 
110
 
117
 import payDialog from "./components/payDialog.vue";
120
 import payDialog from "./components/payDialog.vue";
118
 import paymentdetailsDialog from './components/paymentdetailsDialog.vue'
121
 import paymentdetailsDialog from './components/paymentdetailsDialog.vue'
119
 import caseAcceptance from './components/caseAcceptance.vue'
122
 import caseAcceptance from './components/caseAcceptance.vue'
123
+import selectMediator from './components/selectMediator.vue'
120
 export default {
124
 export default {
121
     name: "caseList",
125
     name: "caseList",
122
     dicts: ["case_flow_node"],
126
     dicts: ["case_flow_node"],
128
         evidenceDialog,
132
         evidenceDialog,
129
         payDialog,
133
         payDialog,
130
         paymentdetailsDialog,
134
         paymentdetailsDialog,
131
-        caseAcceptance
135
+        caseAcceptance,
136
+        selectMediator,//调解员弹窗
132
     },
137
     },
133
     data() {
138
     data() {
134
         return {
139
         return {
160
             paymentConfirma:{},//缴费确认
165
             paymentConfirma:{},//缴费确认
161
             showAcceptance:false,//案件受理弹框
166
             showAcceptance:false,//案件受理弹框
162
             caseAcceptanceData:{},//案件受理数据
167
             caseAcceptanceData:{},//案件受理数据
168
+            mediatorVisable:false,//选择调解员弹窗
169
+            timeVisable:false,//预约时间弹窗
170
+            mediatorData:{},
163
             flag: null,
171
             flag: null,
164
             caseData: {},
172
             caseData: {},
165
             evidenceData: {},
173
             evidenceData: {},
221
                 })
229
                 })
222
                 .catch(() => { });
230
                 .catch(() => { });
223
         },
231
         },
232
+        /** 选择调解员 */
233
+        selectMediator(val){
234
+            this.mediatorVisable = true;
235
+            this.mediatorData = val;
236
+        },
237
+        /** 预约时间 */
238
+        selectTime(val){
239
+            this.timeVisable = true;
240
+        },
224
         getDetail(parms) {
241
         getDetail(parms) {
225
             caseApplicationSelectById(parms).then((res) => {
242
             caseApplicationSelectById(parms).then((res) => {
226
                 this.formPayDetail = res.data;
243
                 this.formPayDetail = res.data;
270
         paycancelRow(row) {
287
         paycancelRow(row) {
271
             this.openPay = false;
288
             this.openPay = false;
272
         },
289
         },
290
+        /** 取消调解员弹窗 */
291
+        cancelMediator(){
292
+            this.mediatorVisable = false;
293
+        },
294
+        /** 取消预约时间弹窗 */
295
+        cancelTime(){
296
+            this.timeVisable = false;
297
+        },
273
         /** 搜索按钮操作 */
298
         /** 搜索按钮操作 */
274
         handleQuery() {
299
         handleQuery() {
275
             this.queryParams.pageNum = 1;
300
             this.queryParams.pageNum = 1;

+ 155
- 0
src/views/caseManagement/components/selectMediator.vue Dosyayı Görüntüle

1
+<template>
2
+    <div>
3
+        <el-dialog title="预约时间/调解员" :visible="mediatorVisable" v-if="mediatorVisable" @close="cancel" center :distroy-on-close="true">
4
+            <div>
5
+                <div>
6
+                    <div style="margin-bottom: 20px;">预约调解员</div>
7
+                </div>
8
+                <el-table ref="multipleTable" :data="tableData" tooltip-effect="dark" style="width: 100%"
9
+                    @selection-change="handleSelectionChange">
10
+                    <el-table-column type="selection" width="55">
11
+                    </el-table-column>
12
+                    <el-table-column prop="mediatorName" label="调解员名称">
13
+                    </el-table-column>
14
+                    <el-table-column prop="specialty" label="专业">
15
+                    </el-table-column>
16
+                    <el-table-column prop="todoAmount" label="待办数量">
17
+                    </el-table-column>
18
+                    <el-table-column prop="completeAmount" label="已办数量">
19
+                    </el-table-column>
20
+                </el-table>
21
+                <div>
22
+                    <div style="margin-top: 20px;margin-bottom: 20px;">预约时间</div>
23
+                    <el-form label-position="right" label-width="80px" :model="formLabelAlign">
24
+                        <el-form-item label="时间1">
25
+                            <el-date-picker v-model="formLabelAlign.time[0]" type="datetime" placeholder="选择日期时间">
26
+                            </el-date-picker>
27
+                        </el-form-item>
28
+                        <el-form-item label="时间2">
29
+                            <el-date-picker v-model="formLabelAlign.time[1]" type="datetime" placeholder="选择日期时间">
30
+                            </el-date-picker>
31
+                        </el-form-item>
32
+                        <el-form-item label="时间3">
33
+                            <el-date-picker v-model="formLabelAlign.time[2]" type="datetime" placeholder="选择日期时间">
34
+                            </el-date-picker>
35
+                        </el-form-item>
36
+                    </el-form>
37
+                </div>
38
+            </div>
39
+            <div slot="footer" class="dialog-footer">
40
+                <el-button @click="cancel" class="endbutton1"><span>取 消</span></el-button>
41
+                <el-button @click="submitMediator" class="endbutton1"><span>确 认</span></el-button>
42
+            </div>
43
+        </el-dialog>
44
+    </div>
45
+</template>
46
+  
47
+<script>
48
+import { Message } from 'element-ui'
49
+import { listMediator,updateBooking } from '@/api/caseManagement/caseManagement.js'
50
+import moment from "moment";
51
+export default {
52
+    props: ["mediatorVisable", "mediatorData","queryParams"],
53
+    data() {
54
+        return {
55
+            tableData: [],
56
+            multipleSelection: [],
57
+            formLabelAlign: {
58
+                time:[]
59
+            },
60
+            formTimeArr:[],
61
+            mediatorArr:[]
62
+        };
63
+    },
64
+    watch: {
65
+        mediatorVisable(val) {
66
+            if (val) {
67
+                // this.this.multipleSelection = [];
68
+                // this.formLabelAlign.time = [];
69
+                listMediator().then(res=>{
70
+                    this.tableData = res.data;
71
+                })
72
+            }
73
+        }
74
+    },
75
+    methods: {
76
+        cancel() {
77
+            this.$emit("cancelMediator");
78
+        },
79
+        /**提交选择结果*/
80
+        async submitMediator() {
81
+            if (this.multipleSelection.length > 3) {
82
+                Message.error('最多选择三名调解员');
83
+                return
84
+            }else if(this.multipleSelection.length < 1){
85
+                Message.error('至少选择一名调解员');
86
+                return
87
+            }
88
+            if(this.formLabelAlign.time.length < 1){
89
+                Message.error('至少选择一个时间');
90
+                return
91
+            }
92
+            this.formLabelAlign.time.forEach(item=>{
93
+                item = moment(
94
+                    item
95
+                ).format("YYYY-MM-DD HH:mm:ss");
96
+                this.formTimeArr.push(item)
97
+            })
98
+            this.multipleSelection.forEach(item=>{
99
+                this.mediatorArr.push({
100
+                    userId:item.mediatorId,
101
+                    userName:item.mediatorName
102
+                })
103
+            })
104
+            await this.updateBookingFn({
105
+                id:this.mediatorData.id,
106
+                caseFlowId:this.mediatorData.caseFlowId,
107
+                userList:this.mediatorArr,
108
+                herDates:this.formTimeArr
109
+            })
110
+            console.log(this.mediatorArr,this.formTimeArr,"LLLLLLLLLLLLLLLLLLLLLLLL");
111
+        },
112
+        async updateBookingFn(data){
113
+            await updateBooking(data).then(res=>{
114
+                this.$modal.msgSuccess("成功");
115
+                this.$emit("getList",this.queryParams);
116
+                this.cancel();
117
+            })
118
+        },
119
+        handleSelectionChange(val) {
120
+            this.multipleSelection = val;
121
+            // console.log(this.multipleSelection,"LLLLLLLLLLLLLLLLL");
122
+        }
123
+    },
124
+};
125
+</script>
126
+  
127
+<style lang="scss" scoped>
128
+.steps {
129
+    display: flex;
130
+    flex-wrap: wrap;
131
+}
132
+
133
+::v-deep .el-step {
134
+    // width: 150px;
135
+    flex-basis: 25% !important;
136
+    margin-right: 20px;
137
+    margin-bottom: 20px;
138
+}
139
+
140
+::v-deep .el-dialog__body {
141
+    height: 500px !important;
142
+    overflow: auto !important;
143
+}
144
+
145
+::v-deep .el-dialog {
146
+    width: 800px;
147
+    background: #ffffff;
148
+    border-radius: 20px;
149
+}
150
+
151
+.timeTitle {
152
+    width: 1000%;
153
+    text-align: center;
154
+}
155
+</style>

+ 7
- 0
src/views/system/user/index.vue Dosyayı Görüntüle

301
             </el-form-item>
301
             </el-form-item>
302
           </el-col>
302
           </el-col>
303
         </el-row>
303
         </el-row>
304
+        <el-row>
305
+          <el-col :span="24">
306
+            <el-form-item label="专长">
307
+              <el-input v-model="form.specialty" type="textarea" placeholder="请输入内容"></el-input>
308
+            </el-form-item>
309
+          </el-col>
310
+        </el-row>
304
       </el-form>
311
       </el-form>
305
       <div slot="footer" class="dialog-footer">
312
       <div slot="footer" class="dialog-footer">
306
         <el-button type="primary" @click="submitForm">确 定</el-button>
313
         <el-button type="primary" @click="submitForm">确 定</el-button>