Sfoglia il codice sorgente

Merge branch 'hcb' of SH-Arbitrate/Mediation-Frontend into dev

hanchaobo 2 anni fa
parent
commit
aaa7e346ef

+ 86
- 80
src/api/caseManagement/caseManagement.js Vedi File

@@ -2,99 +2,99 @@ import request from '@/utils/request'
2 2
 
3 3
 // 查询案件列表
4 4
 export function caseApplicationList(data) {
5
-    return request({
6
-        url: 'caseApplication/list',
7
-        method: 'get',
8
-        params: data
9
-    })
5
+  return request({
6
+    url: 'caseApplication/list',
7
+    method: 'get',
8
+    params: data
9
+  })
10 10
 }
11 11
 /** 新增案件 */
12 12
 export function caseApplicationInsert(data) {
13
-    return request({
14
-        url: 'caseApplication/insert',
15
-        method: 'post',
16
-        data: data
17
-    })
13
+  return request({
14
+    url: 'caseApplication/insert',
15
+    method: 'post',
16
+    data: data
17
+  })
18 18
 }
19 19
 /** 根据id查询案件信息 */
20 20
 export function caseApplicationSelectById(data) {
21
-    return request({
22
-        url: '/caseApplication/selectById',
23
-        method: 'get',
24
-        params: data
25
-    })
21
+  return request({
22
+    url: '/caseApplication/selectById',
23
+    method: 'get',
24
+    params: data
25
+  })
26 26
 }
27 27
 /** 案件证据查询 */
28 28
 export function getFileList(data) {
29
-    return request({
30
-        url: "/common/fileList",
31
-        method: "get",
32
-        params: data,
33
-    });
29
+  return request({
30
+    url: "/common/fileList",
31
+    method: "get",
32
+    params: data,
33
+  });
34 34
 }
35 35
 /** 批量上传证据 */
36 36
 export function batchUpload(data) {
37
-    return request({
38
-        url: "/caseApplication/batchUpload",
39
-        method: "post",
40
-        data: data,
41
-    });
37
+  return request({
38
+    url: "/caseApplication/batchUpload",
39
+    method: "post",
40
+    data: data,
41
+  });
42 42
 }
43 43
 // 提交 
44 44
 export function submitCaseApply(data) {
45
-    return request({
46
-      url: '/caseApplication/submit',
47
-      method: 'post',
48
-      data: data
49
-    })
50
-  }
45
+  return request({
46
+    url: '/caseApplication/submit',
47
+    method: 'post',
48
+    data: data
49
+  })
50
+}
51 51
 //   缴费确认
52 52
 export function confirmPaid(data) {
53
-    return request({
54
-      url: "/pay/confirmPaid",
55
-      method: "post",
56
-      data: data,
57
-    });
58
-  }
53
+  return request({
54
+    url: "/pay/confirmPaid",
55
+    method: "post",
56
+    data: data,
57
+  });
58
+}
59 59
 //   案件id查询缴费清单
60 60
 export function selectPaymentDetail(data) {
61
-    return request({
62
-      url: "/pay/selectPaymentDetail",
63
-      method: "get",
64
-      params: data,
65
-    });
66
-  }
67
-  //案件受理
68
-  export function accept(data) {
69
-    return request({
70
-      url: "/caseApplication/accept",
71
-      method: "post",
72
-      data: data,
73
-    });
74
-  }
75
-  export function listMediator(data) {
76
-    return request({
77
-      url: "caseApplication/listMediator",
78
-      method: "get",
79
-      params: data,
80
-    });
81
-  }
61
+  return request({
62
+    url: "/pay/selectPaymentDetail",
63
+    method: "get",
64
+    params: data,
65
+  });
66
+}
67
+//案件受理
68
+export function accept(data) {
69
+  return request({
70
+    url: "/caseApplication/accept",
71
+    method: "post",
72
+    data: data,
73
+  });
74
+}
75
+export function listMediator(data) {
76
+  return request({
77
+    url: "caseApplication/listMediator",
78
+    method: "get",
79
+    params: data,
80
+  });
81
+}
82 82
 //   确认仲裁员以及时间
83 83
 export function updateBooking(data) {
84
-    return request({
85
-      url: "/caseApplication/updateBooking",
86
-      method: "post",
87
-      data: data,
88
-    });
89
-  }
90
-  //用印申请
91
-  export function sealApply(data) {
92
-    return request({
93
-      url: "/mssignSeal/sealApply",
94
-      method: "post",
95
-      data: data,
96
-    });
97
-  }
84
+  return request({
85
+    url: "/caseApplication/updateBooking",
86
+    method: "post",
87
+    data: data,
88
+  });
89
+}
90
+//用印申请
91
+export function sealApply(data) {
92
+  return request({
93
+    url: "/mssignSeal/sealApply",
94
+    method: "post",
95
+    data: data,
96
+  });
97
+}
98 98
 // 用印确认
99 99
 export function selectSealUrl(data) {
100 100
   return request({
@@ -105,13 +105,13 @@ export function selectSealUrl(data) {
105 105
 }
106 106
 //查询预约信息
107 107
 export function selectReservation(data) {
108
-    return request({
109
-      url: "/caseApplication/selectReservation",
110
-      method: "get",
111
-      params: data,
112
-    });
113
-  }
114
-  //核实调解员
108
+  return request({
109
+    url: "/caseApplication/selectReservation",
110
+    method: "get",
111
+    params: data,
112
+  });
113
+}
114
+//核实调解员
115 115
 export function verifyMediator(data) {
116 116
   return request({
117 117
     url: "/caseApplication/verifyMediator",
@@ -119,11 +119,17 @@ export function verifyMediator(data) {
119 119
     data: data,
120 120
   });
121 121
 }
122
+// 确认调节时间
123
+export function confirmDate(data) {
124
+  return request({
125
+    url: "/caseApplication/confirmDate",
126
+  })
127
+}
122 128
 // 查看案件流程
123 129
 export function selectCaseProgress(data) {
124 130
   return request({
125 131
     url: "/mssignSeal/selectCaseProgress",
126 132
     method: "post",
127 133
     data: data,
128
-  });
134
+  })
129 135
 }

+ 19
- 4
src/views/caseManagement/caseList.vue Vedi File

@@ -78,6 +78,7 @@
78 78
                     <el-button size="mini" type="text" icon="el-icon-tickets" @click="selectMediator(scope.row)">预约时间</el-button>
79 79
                     <el-button size="mini" type="text" icon="el-icon-tickets" @click="secretaryConfirm(scope.row)">秘书审核</el-button>
80 80
                     <el-button size="mini" type="text" icon="el-icon-tickets" @click="department(scope.row)">部门长审核</el-button>
81
+                    <el-button size="mini" type="text" icon="el-icon-tickets" @click="timeConfirm(scope.row)">确认调解时间</el-button>
81 82
                 </template>
82 83
             </el-table-column>
83 84
         </el-table>
@@ -111,6 +112,8 @@
111 112
         <confirmMediator @cancelConfirm="cancelConfirm" :confirmVisable="confirmVisable" :confirmData="confirmData" @getList="getList" :queryParams="queryParams"></confirmMediator>
112 113
         <!-- 部门长确认 -->
113 114
         <departmentMediator @cancelDepartment="cancelDepartment" :departmentVisable="departmentVisable" :departmentData="departmentData" @getList="getList" :queryParams="queryParams"></departmentMediator>
115
+        <!-- 秘书确认时间 -->
116
+        <timeConfirm @cancelTimeConfirm="cancelTimeConfirm" :timeConfirmVisable="timeConfirmVisable" :timeConfirmData="timeConfirmData" @getList="getList" :queryParams="queryParams"></timeConfirm>
114 117
     </div>
115 118
 </template>
116 119
 
@@ -129,6 +132,7 @@ import caseAcceptance from './components/caseAcceptance.vue'
129 132
 import selectMediator from './components/selectMediator.vue'
130 133
 import confirmMediator from './components/confirmMediator.vue'
131 134
 import departmentMediator from './components/departmentMediator.vue'
135
+import timeConfirm from './components/timeConfirm.vue'
132 136
 export default {
133 137
     name: "caseList",
134 138
     dicts: ["case_flow_node"],
@@ -143,7 +147,8 @@ export default {
143 147
         caseAcceptance,
144 148
         selectMediator,//调解员弹窗
145 149
         confirmMediator,
146
-        departmentMediator
150
+        departmentMediator,
151
+        timeConfirm
147 152
     },
148 153
     data() {
149 154
         return {
@@ -190,7 +195,9 @@ export default {
190 195
             tabFlag: false,
191 196
             confirmData:{},
192 197
             departmentVisable:false,
193
-            departmentData:{}
198
+            departmentData:{},
199
+            timeConfirmVisable:false,
200
+            timeConfirmData:{}
194 201
         };
195 202
     },
196 203
     created() {
@@ -260,16 +267,21 @@ export default {
260 267
                 this.payForm.caseId = res.data.id;
261 268
             });
262 269
         },
263
-        /** 确认时间/调解员 */
270
+        /** 确认调解员 */
264 271
         secretaryConfirm(val){
265 272
             this.confirmVisable = true;
266 273
             this.confirmData = val;
267 274
         },
268
-        /** 部门长确认时间/调解员 */
275
+        /** 部门长确认调解员 */
269 276
         department(val){
270 277
             this.departmentVisable = true;
271 278
             this.departmentData = val;
272 279
         },
280
+        /**确认时间 */
281
+        timeConfirm(val){
282
+            this.timeConfirmVisable = true;
283
+            this.timeConfirmData = val;
284
+        },
273 285
         /** 时间改变处理 */
274 286
         caseTimeChange() {
275 287
             if (this.caseTime) {
@@ -326,6 +338,9 @@ export default {
326 338
         cancelDepartment(){
327 339
             this.departmentVisable = false;
328 340
         },
341
+        cancelTimeConfirm(){
342
+            this.timeConfirmVisable = false;
343
+        },
329 344
         /** 搜索按钮操作 */
330 345
         handleQuery() {
331 346
             this.queryParams.pageNum = 1;

+ 7
- 7
src/views/caseManagement/components/confirmMediator.vue Vedi File

@@ -1,6 +1,6 @@
1 1
 <template>
2 2
     <div>
3
-        <el-dialog title="秘书确认时间/调解员" :visible="confirmVisable" v-if="confirmVisable" @close="cancel" center
3
+        <el-dialog title="秘书确认调解员" :visible="confirmVisable" v-if="confirmVisable" @close="cancel" center
4 4
             :distroy-on-close="true">
5 5
             <div style="margin-bottom: 20px;">
6 6
                 <el-radio-group v-model="confirmFlag">
@@ -25,13 +25,13 @@
25 25
                     <el-table-column prop="completeAmount" label="已办数量">
26 26
                     </el-table-column>
27 27
                 </el-table>
28
-                <div>
28
+                <!-- <div>
29 29
                     <div style="margin-top: 20px;margin-bottom: 20px;">时间</div>
30 30
                     <el-form label-position="right" label-width="80px" :model="formLabelAlign" :disabled="confirmShow">
31 31
                         <el-form-item label="时间">
32 32
                             <el-date-picker v-model="formLabelAlign.time[0]" type="datetime" placeholder="选择日期时间">
33 33
                             </el-date-picker>
34
-                        </el-form-item>
34
+                        </el-form-item> -->
35 35
                         <!-- 后期需要三个时间 -->
36 36
                         <!-- <el-form-item label="时间2">
37 37
                             <el-date-picker v-model="formLabelAlign.time[1]" type="datetime" placeholder="选择日期时间">
@@ -41,8 +41,8 @@
41 41
                             <el-date-picker v-model="formLabelAlign.time[2]" type="datetime" placeholder="选择日期时间">
42 42
                             </el-date-picker>
43 43
                         </el-form-item> -->
44
-                    </el-form>
45
-                </div>
44
+                    <!-- </el-form>
45
+                </div> -->
46 46
             </div>
47 47
             <div slot="footer" class="dialog-footer">
48 48
                 <el-button @click="cancel" class="endbutton1"><span>取 消</span></el-button>
@@ -125,7 +125,7 @@ export default {
125 125
                     id: this.confirmData.id,
126 126
                     caseFlowId: this.confirmData.caseFlowId,
127 127
                     userList: userArr,
128
-                    herDates: this.formLabelAlign.time
128
+                    // herDates: this.formLabelAlign.time
129 129
                 })
130 130
             } else {
131 131
                 if (this.multipleSelection.length > 1) {
@@ -155,7 +155,7 @@ export default {
155 155
                     id: this.confirmData.id,
156 156
                     caseFlowId: this.confirmData.caseFlowId,
157 157
                     userList: this.mediatorArr,
158
-                    herDates: this.formLabelAlign.time
158
+                    // herDates: this.formLabelAlign.time
159 159
                 })
160 160
             }
161 161
         },

+ 7
- 7
src/views/caseManagement/components/departmentMediator.vue Vedi File

@@ -1,6 +1,6 @@
1 1
 <template>
2 2
     <div>
3
-        <el-dialog title="部门长确认时间/调解员" :visible="departmentVisable" v-if="departmentVisable" @close="cancel" center
3
+        <el-dialog title="部门长确认调解员" :visible="departmentVisable" v-if="departmentVisable" @close="cancel" center
4 4
             :distroy-on-close="true">
5 5
             <div style="margin-bottom: 20px;">
6 6
                 <el-radio-group v-model="confirmFlag">
@@ -25,13 +25,13 @@
25 25
                     <el-table-column prop="completeAmount" label="已办数量">
26 26
                     </el-table-column>
27 27
                 </el-table>
28
-                <div>
28
+                <!-- <div>
29 29
                     <div style="margin-top: 20px;margin-bottom: 20px;">时间</div>
30 30
                     <el-form label-position="right" label-width="80px" :model="formLabelAlign" :disabled="confirmShow">
31 31
                         <el-form-item label="时间">
32 32
                             <el-date-picker v-model="formLabelAlign.time[0]" type="datetime" placeholder="选择日期时间">
33 33
                             </el-date-picker>
34
-                        </el-form-item>
34
+                        </el-form-item> -->
35 35
                         <!-- 后期需要三个时间 -->
36 36
                         <!-- <el-form-item label="时间2">
37 37
                             <el-date-picker v-model="formLabelAlign.time[1]" type="datetime" placeholder="选择日期时间">
@@ -41,8 +41,8 @@
41 41
                             <el-date-picker v-model="formLabelAlign.time[2]" type="datetime" placeholder="选择日期时间">
42 42
                             </el-date-picker>
43 43
                         </el-form-item> -->
44
-                    </el-form>
45
-                </div>
44
+                    <!-- </el-form>
45
+                </div> -->
46 46
             </div>
47 47
             <div slot="footer" class="dialog-footer">
48 48
                 <el-button @click="cancel" class="endbutton1"><span>取 消</span></el-button>
@@ -125,7 +125,7 @@ export default {
125 125
                     id: this.departmentData.id,
126 126
                     caseFlowId: this.departmentData.caseFlowId,
127 127
                     userList: userArr,
128
-                    herDates: this.formLabelAlign.time
128
+                    // herDates: this.formLabelAlign.time
129 129
                 })
130 130
             } else {
131 131
                 if (this.multipleSelection.length > 1) {
@@ -155,7 +155,7 @@ export default {
155 155
                     id: this.departmentData.id,
156 156
                     caseFlowId: this.departmentData.caseFlowId,
157 157
                     userList: this.mediatorArr,
158
-                    herDates: this.formLabelAlign.time
158
+                    // herDates: this.formLabelAlign.time
159 159
                 })
160 160
             }
161 161
         },

+ 175
- 0
src/views/caseManagement/components/timeConfirm.vue Vedi File

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