正在显示
4 个修改的文件
包含
260 行增加
和
132 行删除
| @@ -64,9 +64,9 @@ export function queryMyList(params) { | @@ -64,9 +64,9 @@ export function queryMyList(params) { | ||
| 64 | } | 64 | } |
| 65 | 65 | ||
| 66 | // 办理一个用户任务 | 66 | // 办理一个用户任务 |
| 67 | -export function disposeUser(data) { | 67 | +export function disposeUser(data, taskId) { |
| 68 | return request({ | 68 | return request({ |
| 69 | - url: '/registration/completeTask/{taskId}', | 69 | + url: `/registration/completeTask/${taskId}`, |
| 70 | method: 'post', | 70 | method: 'post', |
| 71 | data | 71 | data |
| 72 | }) | 72 | }) |
| @@ -75,8 +75,17 @@ export function disposeUser(data) { | @@ -75,8 +75,17 @@ export function disposeUser(data) { | ||
| 75 | // 转办 | 75 | // 转办 |
| 76 | export function transfer(taskId) { | 76 | export function transfer(taskId) { |
| 77 | return request({ | 77 | return request({ |
| 78 | - url: `/registration/completeTask/${taskId}`, | 78 | + url: `/registratiom/transferTask/${taskId}`, |
| 79 | method: 'post' | 79 | method: 'post' |
| 80 | }) | 80 | }) |
| 81 | } | 81 | } |
| 82 | 82 | ||
| 83 | +// 修改登记信息 | ||
| 84 | +export function updateCarInfo(data) { | ||
| 85 | + return request({ | ||
| 86 | + url: '/registration/edit', | ||
| 87 | + method: 'post', | ||
| 88 | + data | ||
| 89 | + }) | ||
| 90 | +} | ||
| 91 | + |
| @@ -137,7 +137,7 @@ | @@ -137,7 +137,7 @@ | ||
| 137 | <el-input | 137 | <el-input |
| 138 | v-model="form.licensePlateNumber" | 138 | v-model="form.licensePlateNumber" |
| 139 | placeholder="请输入车牌号" | 139 | placeholder="请输入车牌号" |
| 140 | - disabled | 140 | + :disabled="hasRole" |
| 141 | /> | 141 | /> |
| 142 | </el-form-item> | 142 | </el-form-item> |
| 143 | </el-col> | 143 | </el-col> |
| @@ -145,7 +145,7 @@ | @@ -145,7 +145,7 @@ | ||
| 145 | <el-form-item label="车架号" prop="frameNumber"> | 145 | <el-form-item label="车架号" prop="frameNumber"> |
| 146 | <el-input | 146 | <el-input |
| 147 | v-model="form.frameNumber" | 147 | v-model="form.frameNumber" |
| 148 | - disabled | 148 | + :disabled="hasRole" |
| 149 | placeholder="请输入车架号" | 149 | placeholder="请输入车架号" |
| 150 | /> | 150 | /> |
| 151 | </el-form-item> | 151 | </el-form-item> |
| @@ -156,7 +156,7 @@ | @@ -156,7 +156,7 @@ | ||
| 156 | <el-form-item label="车主姓名" prop="name"> | 156 | <el-form-item label="车主姓名" prop="name"> |
| 157 | <el-input | 157 | <el-input |
| 158 | v-model="form.name" | 158 | v-model="form.name" |
| 159 | - disabled | 159 | + :disabled="hasRole" |
| 160 | placeholder="请输入车主姓名" | 160 | placeholder="请输入车主姓名" |
| 161 | /> | 161 | /> |
| 162 | </el-form-item> | 162 | </el-form-item> |
| @@ -165,7 +165,7 @@ | @@ -165,7 +165,7 @@ | ||
| 165 | <el-form-item label="联系电话" prop="phone"> | 165 | <el-form-item label="联系电话" prop="phone"> |
| 166 | <el-input | 166 | <el-input |
| 167 | v-model="form.phone" | 167 | v-model="form.phone" |
| 168 | - disabled | 168 | + :disabled="hasRole" |
| 169 | placeholder="请输入联系电话" | 169 | placeholder="请输入联系电话" |
| 170 | /> | 170 | /> |
| 171 | </el-form-item> | 171 | </el-form-item> |
| @@ -176,7 +176,7 @@ | @@ -176,7 +176,7 @@ | ||
| 176 | <el-form-item label="车辆类型" prop="vehicleType"> | 176 | <el-form-item label="车辆类型" prop="vehicleType"> |
| 177 | <el-input | 177 | <el-input |
| 178 | v-model="form.vehicleType" | 178 | v-model="form.vehicleType" |
| 179 | - disabled | 179 | + :disabled="hasRole" |
| 180 | placeholder="请输入登记时间" | 180 | placeholder="请输入登记时间" |
| 181 | /> | 181 | /> |
| 182 | </el-form-item> | 182 | </el-form-item> |
| @@ -185,7 +185,7 @@ | @@ -185,7 +185,7 @@ | ||
| 185 | <el-form-item label="车辆使用性质" prop="vehicleNature"> | 185 | <el-form-item label="车辆使用性质" prop="vehicleNature"> |
| 186 | <el-input | 186 | <el-input |
| 187 | v-model="form.vehicleNature" | 187 | v-model="form.vehicleNature" |
| 188 | - disabled | 188 | + :disabled="hasRole" |
| 189 | placeholder="请输入办理人" | 189 | placeholder="请输入办理人" |
| 190 | /> | 190 | /> |
| 191 | </el-form-item> | 191 | </el-form-item> |
| @@ -196,7 +196,7 @@ | @@ -196,7 +196,7 @@ | ||
| 196 | <el-form-item label="核定载客数" prop="passengersNumber"> | 196 | <el-form-item label="核定载客数" prop="passengersNumber"> |
| 197 | <el-input | 197 | <el-input |
| 198 | v-model="form.passengersNumber" | 198 | v-model="form.passengersNumber" |
| 199 | - disabled | 199 | + :disabled="hasRole" |
| 200 | placeholder="请输入办理人" | 200 | placeholder="请输入办理人" |
| 201 | /> | 201 | /> |
| 202 | </el-form-item> | 202 | </el-form-item> |
| @@ -205,7 +205,7 @@ | @@ -205,7 +205,7 @@ | ||
| 205 | <el-form-item label="核定载质量" prop="passengerCapacity"> | 205 | <el-form-item label="核定载质量" prop="passengerCapacity"> |
| 206 | <el-input | 206 | <el-input |
| 207 | v-model="form.passengerCapacity" | 207 | v-model="form.passengerCapacity" |
| 208 | - disabled | 208 | + :disabled="hasRole" |
| 209 | placeholder="请输入承保公司" | 209 | placeholder="请输入承保公司" |
| 210 | /> | 210 | /> |
| 211 | </el-form-item> | 211 | </el-form-item> |
| @@ -216,7 +216,7 @@ | @@ -216,7 +216,7 @@ | ||
| 216 | <el-form-item label="排量毫升" prop="emissions"> | 216 | <el-form-item label="排量毫升" prop="emissions"> |
| 217 | <el-input | 217 | <el-input |
| 218 | v-model="form.emissions" | 218 | v-model="form.emissions" |
| 219 | - disabled | 219 | + :disabled="hasRole" |
| 220 | placeholder="请输入办理人" | 220 | placeholder="请输入办理人" |
| 221 | /> | 221 | /> |
| 222 | </el-form-item> | 222 | </el-form-item> |
| @@ -225,7 +225,7 @@ | @@ -225,7 +225,7 @@ | ||
| 225 | <el-form-item label="中文品牌" prop="vehicleBrand"> | 225 | <el-form-item label="中文品牌" prop="vehicleBrand"> |
| 226 | <el-input | 226 | <el-input |
| 227 | v-model="form.vehicleBrand" | 227 | v-model="form.vehicleBrand" |
| 228 | - disabled | 228 | + :disabled="hasRole" |
| 229 | placeholder="请输入办理人" | 229 | placeholder="请输入办理人" |
| 230 | /> | 230 | /> |
| 231 | </el-form-item> | 231 | </el-form-item> |
| @@ -236,7 +236,7 @@ | @@ -236,7 +236,7 @@ | ||
| 236 | <el-form-item label="车辆型号" prop="vehicleModel"> | 236 | <el-form-item label="车辆型号" prop="vehicleModel"> |
| 237 | <el-input | 237 | <el-input |
| 238 | v-model="form.vehicleModel" | 238 | v-model="form.vehicleModel" |
| 239 | - disabled | 239 | + :disabled="hasRole" |
| 240 | placeholder="请输入办理人" | 240 | placeholder="请输入办理人" |
| 241 | /> | 241 | /> |
| 242 | </el-form-item> | 242 | </el-form-item> |
| @@ -245,7 +245,7 @@ | @@ -245,7 +245,7 @@ | ||
| 245 | <el-form-item label="准牵引准质量" prop="tractionMass"> | 245 | <el-form-item label="准牵引准质量" prop="tractionMass"> |
| 246 | <el-input | 246 | <el-input |
| 247 | v-model="form.tractionMass" | 247 | v-model="form.tractionMass" |
| 248 | - disabled | 248 | + :disabled="hasRole" |
| 249 | placeholder="请输入办理人" | 249 | placeholder="请输入办理人" |
| 250 | /> | 250 | /> |
| 251 | </el-form-item> | 251 | </el-form-item> |
| @@ -256,7 +256,7 @@ | @@ -256,7 +256,7 @@ | ||
| 256 | <el-form-item label="保险需求" prop="requirements"> | 256 | <el-form-item label="保险需求" prop="requirements"> |
| 257 | <el-input | 257 | <el-input |
| 258 | v-model="form.requirements" | 258 | v-model="form.requirements" |
| 259 | - disabled | 259 | + :disabled="hasRole" |
| 260 | placeholder="请输入办理人" | 260 | placeholder="请输入办理人" |
| 261 | /> | 261 | /> |
| 262 | </el-form-item> | 262 | </el-form-item> |
| @@ -265,21 +265,14 @@ | @@ -265,21 +265,14 @@ | ||
| 265 | <el-form-item label="承保单号" prop="policyNumber"> | 265 | <el-form-item label="承保单号" prop="policyNumber"> |
| 266 | <el-input | 266 | <el-input |
| 267 | v-model="form.policyNumber" | 267 | v-model="form.policyNumber" |
| 268 | - disabled | 268 | + :disabled="hasRole" |
| 269 | placeholder="请输入办理人" | 269 | placeholder="请输入办理人" |
| 270 | /> | 270 | /> |
| 271 | </el-form-item> | 271 | </el-form-item> |
| 272 | </el-col> | 272 | </el-col> |
| 273 | </el-row> | 273 | </el-row> |
| 274 | <el-form-item label="保单回馈" prop="progress"> | 274 | <el-form-item label="保单回馈" prop="progress"> |
| 275 | - <el-input | ||
| 276 | - :rows="6" | ||
| 277 | - disabled | ||
| 278 | - type="textarea" | ||
| 279 | - placeholder="请输入保单回馈" | ||
| 280 | - v-model="form.message" | ||
| 281 | - resize="none" | ||
| 282 | - /> | 275 | + <QuillEditor :value="form.message" @updateValue="getMsg" /> |
| 283 | </el-form-item> | 276 | </el-form-item> |
| 284 | </el-form> | 277 | </el-form> |
| 285 | <template #footer> | 278 | <template #footer> |
| @@ -300,6 +293,9 @@ const total = ref(5); | @@ -300,6 +293,9 @@ const total = ref(5); | ||
| 300 | const open = ref(false); | 293 | const open = ref(false); |
| 301 | const form = ref({}); | 294 | const form = ref({}); |
| 302 | const showSearch = ref(true); | 295 | const showSearch = ref(true); |
| 296 | +const hasRole = computed(() => { | ||
| 297 | + return !proxy.$auth.hasRole("associationemployee"); | ||
| 298 | +}); | ||
| 303 | const queryParams = reactive({ | 299 | const queryParams = reactive({ |
| 304 | pageNum: 1, | 300 | pageNum: 1, |
| 305 | pageSize: 10, | 301 | pageSize: 10, |
| @@ -362,7 +358,9 @@ function resetQuery() { | @@ -362,7 +358,9 @@ function resetQuery() { | ||
| 362 | proxy.resetForm("queryRef"); | 358 | proxy.resetForm("queryRef"); |
| 363 | handleQuery(); | 359 | handleQuery(); |
| 364 | } | 360 | } |
| 365 | - | 361 | +const getMsg = (val) => { |
| 362 | + form.value.message = val; | ||
| 363 | +}; | ||
| 366 | getList(); | 364 | getList(); |
| 367 | </script> | 365 | </script> |
| 368 | 366 |
| 1 | <template> | 1 | <template> |
| 2 | <div class="app-container"> | 2 | <div class="app-container"> |
| 3 | <!-- 表格数据 --> | 3 | <!-- 表格数据 --> |
| 4 | - <el-table | ||
| 5 | - v-loading="loading" | ||
| 6 | - :data="policyList" | ||
| 7 | - @selection-change="handleSelectionChange" | ||
| 8 | - @row-click="handleUpdate" | ||
| 9 | - > | 4 | + <el-table v-loading="loading" :data="policyList" @row-click="handleUpdate"> |
| 10 | <el-table-column type="selection" width="55" align="center" /> | 5 | <el-table-column type="selection" width="55" align="center" /> |
| 11 | - <el-table-column | ||
| 12 | - label="序号" | ||
| 13 | - prop="policyId" | ||
| 14 | - width="120" | ||
| 15 | - align="center" | ||
| 16 | - /> | 6 | + <el-table-column label="序号" width="55" type="index" /> |
| 17 | <el-table-column | 7 | <el-table-column |
| 18 | label="登记时间" | 8 | label="登记时间" |
| 19 | - prop="createTime" | 9 | + prop="initialRegistrationTime" |
| 20 | width="150" | 10 | width="150" |
| 21 | align="center" | 11 | align="center" |
| 22 | /> | 12 | /> |
| 23 | <el-table-column | 13 | <el-table-column |
| 24 | label="车牌号" | 14 | label="车牌号" |
| 25 | - prop="carNum" | 15 | + prop="licensePlateNumber" |
| 26 | width="150" | 16 | width="150" |
| 27 | align="center" | 17 | align="center" |
| 28 | /> | 18 | /> |
| 29 | - <el-table-column label="车架号" prop="frameNum" align="center" /> | 19 | + <el-table-column label="车架号" prop="frameNumber" align="center" /> |
| 30 | <el-table-column | 20 | <el-table-column |
| 31 | label="车主姓名" | 21 | label="车主姓名" |
| 32 | prop="name" | 22 | prop="name" |
| @@ -41,21 +31,77 @@ | @@ -41,21 +31,77 @@ | ||
| 41 | /> | 31 | /> |
| 42 | <el-table-column | 32 | <el-table-column |
| 43 | label="上年承保公司" | 33 | label="上年承保公司" |
| 44 | - prop="company" | 34 | + prop="sysDeptName" |
| 35 | + width="150" | ||
| 36 | + align="center" | ||
| 37 | + /> | ||
| 38 | + <el-table-column | ||
| 39 | + v-show="hasCompanyadmin" | ||
| 40 | + label="分配机制" | ||
| 41 | + prop="distributionMechanism" | ||
| 42 | + width="150" | ||
| 43 | + align="center" | ||
| 44 | + /> | ||
| 45 | + <el-table-column | ||
| 46 | + label="订单分配时间" | ||
| 47 | + prop="distributionTime" | ||
| 48 | + width="150" | ||
| 49 | + align="center" | ||
| 50 | + /> | ||
| 51 | + <el-table-column | ||
| 52 | + label="保单进度" | ||
| 53 | + prop="orderProgress" | ||
| 54 | + width="150" | ||
| 55 | + align="center" | ||
| 56 | + /> | ||
| 57 | + <el-table-column | ||
| 58 | + label="承接时间" | ||
| 59 | + prop="companyEmployeeUndertakeTime" | ||
| 60 | + width="150" | ||
| 61 | + align="center" | ||
| 62 | + /> | ||
| 63 | + <el-table-column | ||
| 64 | + v-show="hasCompanyadmin" | ||
| 65 | + label="承接人" | ||
| 66 | + prop="associationEmployeeUserName" | ||
| 45 | width="150" | 67 | width="150" |
| 46 | align="center" | 68 | align="center" |
| 47 | /> | 69 | /> |
| 48 | <el-table-column label="操作" align="center" width="360" fixed="right"> | 70 | <el-table-column label="操作" align="center" width="360" fixed="right"> |
| 49 | - <template #default> | ||
| 50 | - <el-button type="primary" v-hasPermi="['policy:pending:continue']" | ||
| 51 | - >承接</el-button | ||
| 52 | - > | 71 | + <template #default="{ row }"> |
| 72 | + <el-button type="primary" v-hasPermi="['policy:pending:continue']">{{ | ||
| 73 | + row.orderProgress === "已承接" ? "承接回馈" : "承接" | ||
| 74 | + }}</el-button> | ||
| 53 | <el-button type="primary" v-hasPermi="['policy:pending:sharing']" | 75 | <el-button type="primary" v-hasPermi="['policy:pending:sharing']" |
| 54 | >分配</el-button | 76 | >分配</el-button |
| 55 | > | 77 | > |
| 56 | <el-button type="primary" v-hasPermi="['policy:pending:transfer']" | 78 | <el-button type="primary" v-hasPermi="['policy:pending:transfer']" |
| 57 | >转办</el-button | 79 | >转办</el-button |
| 58 | > | 80 | > |
| 81 | + <el-button | ||
| 82 | + type="primary" | ||
| 83 | + v-show="hasRole" | ||
| 84 | + @click="handleSuccess(0, row.taskId)" | ||
| 85 | + >通过</el-button | ||
| 86 | + > | ||
| 87 | + <el-button | ||
| 88 | + type="primary" | ||
| 89 | + v-show="hasRole" | ||
| 90 | + @click="handleFallback(1, row.taskId)" | ||
| 91 | + >退回</el-button | ||
| 92 | + > | ||
| 93 | + <el-button | ||
| 94 | + type="primary" | ||
| 95 | + v-show="hasRole" | ||
| 96 | + @click="handleVoid(2, row.taskId)" | ||
| 97 | + >作废</el-button | ||
| 98 | + > | ||
| 99 | + <el-button | ||
| 100 | + type="primary" | ||
| 101 | + v-show="hasRole" | ||
| 102 | + @click="handleAuthCompany(0, row.taskId)" | ||
| 103 | + >分配承保公司</el-button | ||
| 104 | + > | ||
| 59 | </template> | 105 | </template> |
| 60 | </el-table-column> | 106 | </el-table-column> |
| 61 | </el-table> | 107 | </el-table> |
| @@ -75,19 +121,14 @@ | @@ -75,19 +121,14 @@ | ||
| 75 | width="500" | 121 | width="500" |
| 76 | append-to-body | 122 | append-to-body |
| 77 | > | 123 | > |
| 78 | - <el-input | ||
| 79 | - :rows="6" | ||
| 80 | - type="textarea" | ||
| 81 | - placeholder="请输入作废原因" | ||
| 82 | - v-model="deprecatedReason" | ||
| 83 | - resize="none" | 124 | + <QuillEditor |
| 125 | + :value="deprecatedForm.deprecatedReason" | ||
| 126 | + @updateValue="getMsg" | ||
| 84 | /> | 127 | /> |
| 85 | <template #footer> | 128 | <template #footer> |
| 86 | <div class="dialog-footer"> | 129 | <div class="dialog-footer"> |
| 87 | <el-button @click="deprecatedShow = false">取消</el-button> | 130 | <el-button @click="deprecatedShow = false">取消</el-button> |
| 88 | - <el-button type="primary" @click="deprecatedShow = false" | ||
| 89 | - >确定</el-button | ||
| 90 | - > | 131 | + <el-button type="primary" @click="sunmitDeprecated">确定</el-button> |
| 91 | </div> | 132 | </div> |
| 92 | </template> | 133 | </template> |
| 93 | </el-dialog> | 134 | </el-dialog> |
| @@ -102,28 +143,26 @@ | @@ -102,28 +143,26 @@ | ||
| 102 | <div class="company_box"> | 143 | <div class="company_box"> |
| 103 | <div class="header_top"> | 144 | <div class="header_top"> |
| 104 | <el-input | 145 | <el-input |
| 105 | - v-model="companyValue" | 146 | + v-model="companyQueryParams.deptName" |
| 106 | style="width: 380px" | 147 | style="width: 380px" |
| 107 | placeholder="请输入承保公司名称(支持模糊查询)" | 148 | placeholder="请输入承保公司名称(支持模糊查询)" |
| 108 | prefix-icon="Search" | 149 | prefix-icon="Search" |
| 109 | /> | 150 | /> |
| 110 | - <el-button type="primary">查询</el-button> | 151 | + <el-button type="primary" @click="getDeptList">查询</el-button> |
| 111 | </div> | 152 | </div> |
| 112 | - <el-radio-group v-model="company"> | 153 | + <el-radio-group v-model="companyForm.deptId" @change="handleDeptChange"> |
| 113 | <el-radio | 154 | <el-radio |
| 114 | - v-for="item in companyList" | ||
| 115 | - :key="item.id" | ||
| 116 | - :label="item.value" | ||
| 117 | - >{{ item.label }}</el-radio | 155 | + v-for="item in deptOptions" |
| 156 | + :key="item.deptId" | ||
| 157 | + :label="item.deptId" | ||
| 158 | + >{{ item.deptName }}</el-radio | ||
| 118 | > | 159 | > |
| 119 | </el-radio-group> | 160 | </el-radio-group> |
| 120 | </div> | 161 | </div> |
| 121 | <template #footer> | 162 | <template #footer> |
| 122 | <div class="dialog-footer"> | 163 | <div class="dialog-footer"> |
| 123 | <el-button @click="companyShow = false">取消</el-button> | 164 | <el-button @click="companyShow = false">取消</el-button> |
| 124 | - <el-button type="primary" @click="companyShow = false" | ||
| 125 | - >确定</el-button | ||
| 126 | - > | 165 | + <el-button type="primary" @click="submitForm">确定</el-button> |
| 127 | </div> | 166 | </div> |
| 128 | </template> | 167 | </template> |
| 129 | </el-dialog> | 168 | </el-dialog> |
| @@ -202,13 +241,22 @@ | @@ -202,13 +241,22 @@ | ||
| 202 | </template> | 241 | </template> |
| 203 | 242 | ||
| 204 | <script setup> | 243 | <script setup> |
| 205 | -import { queryMyList } from "@/api/policy/index"; | 244 | +import { queryMyList, disposeUser } from "@/api/policy/index"; |
| 245 | +import { listDept } from "@/api/system/dept"; | ||
| 246 | +import { onMounted, ref } from "vue"; | ||
| 206 | const { proxy } = getCurrentInstance(); | 247 | const { proxy } = getCurrentInstance(); |
| 207 | const loading = ref(false); | 248 | const loading = ref(false); |
| 208 | -const total = ref(5); | 249 | +const total = ref(0); |
| 209 | const title = ref("保单信息"); | 250 | const title = ref("保单信息"); |
| 210 | const open = ref(false); | 251 | const open = ref(false); |
| 211 | const form = ref({}); | 252 | const form = ref({}); |
| 253 | +const hasRole = computed(() => { | ||
| 254 | + return proxy.$auth.hasRole("associationemployee"); | ||
| 255 | +}); | ||
| 256 | + | ||
| 257 | +const hasCompanyadmin = computed(() => { | ||
| 258 | + return proxy.$auth.hasRole("companyadmin"); | ||
| 259 | +}); | ||
| 212 | const rules = ref({ | 260 | const rules = ref({ |
| 213 | carNum: [{ required: true, message: "车牌号不能为空", trigger: "blur" }], | 261 | carNum: [{ required: true, message: "车牌号不能为空", trigger: "blur" }], |
| 214 | frameNum: [{ required: true, message: "车架号不能为空", trigger: "blur" }], | 262 | frameNum: [{ required: true, message: "车架号不能为空", trigger: "blur" }], |
| @@ -223,50 +271,99 @@ const rules = ref({ | @@ -223,50 +271,99 @@ const rules = ref({ | ||
| 223 | ], | 271 | ], |
| 224 | }); | 272 | }); |
| 225 | const companyShow = ref(false); | 273 | const companyShow = ref(false); |
| 226 | -const companyList = ref([ | ||
| 227 | - { id: 1, value: 0, label: "中国太平洋保险集团" }, | ||
| 228 | - { id: 2, value: 1, label: "中国平安财产保险股份有限公司" }, | ||
| 229 | - { id: 3, value: 2, label: "北部湾财产保险股份有限公司" }, | ||
| 230 | - { id: 4, value: 3, label: "华安财产保险股份有限公司" }, | ||
| 231 | -]); | 274 | +const deptOptions = ref([]); |
| 232 | const company = ref(2); | 275 | const company = ref(2); |
| 233 | -const companyValue = ref(""); | ||
| 234 | const deprecatedShow = ref(false); | 276 | const deprecatedShow = ref(false); |
| 235 | -const deprecatedReason = ref(""); | 277 | +const deprecatedForm = ref({}); |
| 278 | +const companyForm = ref({}); | ||
| 236 | const queryParams = reactive({ | 279 | const queryParams = reactive({ |
| 237 | pageNum: 1, | 280 | pageNum: 1, |
| 238 | pageSize: 10, | 281 | pageSize: 10, |
| 239 | }); | 282 | }); |
| 283 | +const companyQueryParams = reactive({ | ||
| 284 | + deptName: undefined, | ||
| 285 | + status: undefined, | ||
| 286 | +}); | ||
| 240 | const policyList = ref([]); | 287 | const policyList = ref([]); |
| 241 | 288 | ||
| 242 | -/** 多选框选中数据 */ | ||
| 243 | -function handleSelectionChange(selection) { | ||
| 244 | - // ids.value = selection.map(item => item.roleId); | ||
| 245 | - // single.value = selection.length != 1; | ||
| 246 | - // multiple.value = !selection.length; | ||
| 247 | - console.log(selection); | ||
| 248 | -} | ||
| 249 | - | ||
| 250 | const getList = async () => { | 289 | const getList = async () => { |
| 251 | loading.value = true; | 290 | loading.value = true; |
| 252 | - const res = await queryMyList(queryParams); | ||
| 253 | - policyList.value = res.rows; | ||
| 254 | - total.value = res.total; | 291 | + const { data } = await queryMyList(queryParams); |
| 292 | + policyList.value = data.rows; | ||
| 293 | + total.value = data.total; | ||
| 255 | loading.value = false; | 294 | loading.value = false; |
| 256 | }; | 295 | }; |
| 257 | -const handleSuccess = () => { | ||
| 258 | - console.log("通过"); | 296 | +// 通过保单 |
| 297 | +const handleSuccess = (associationapprove, taskId) => { | ||
| 298 | + ElMessageBox.confirm("是否通过该保单?", { | ||
| 299 | + confirmButtonText: "确认通过", | ||
| 300 | + cancelButtonText: "取消", | ||
| 301 | + type: "warning", | ||
| 302 | + }) | ||
| 303 | + .then(() => { | ||
| 304 | + disposeUser({ associationapprove }, taskId).then((res) => { | ||
| 305 | + proxy.$modal.msgSuccess("保单已通过"); | ||
| 306 | + }); | ||
| 307 | + }) | ||
| 308 | + .catch(() => { | ||
| 309 | + proxy.$modal.msg("取消通过"); | ||
| 310 | + }); | ||
| 259 | }; | 311 | }; |
| 260 | -const handleFallback = () => { | ||
| 261 | - console.log("退回"); | 312 | +// 退回保单 |
| 313 | +const handleFallback = (associationapprove, taskId) => { | ||
| 314 | + ElMessageBox.confirm("是否退回该保单?", { | ||
| 315 | + confirmButtonText: "确认退回", | ||
| 316 | + cancelButtonText: "取消", | ||
| 317 | + type: "warning", | ||
| 318 | + }) | ||
| 319 | + .then(() => { | ||
| 320 | + disposeUser({ associationapprove }, taskId).then((res) => { | ||
| 321 | + proxy.$modal.msgSuccess("保单已退回"); | ||
| 322 | + }); | ||
| 323 | + }) | ||
| 324 | + .catch(() => { | ||
| 325 | + proxy.$modal.msg("已取消"); | ||
| 326 | + }); | ||
| 262 | }; | 327 | }; |
| 263 | -const handleVoid = () => { | ||
| 264 | - console.log("作废"); | 328 | +// 作废保单 |
| 329 | +const handleVoid = (associationapprove, taskId) => { | ||
| 330 | + deprecatedForm.value = { | ||
| 331 | + associationapprove, | ||
| 332 | + taskId, | ||
| 333 | + }; | ||
| 265 | deprecatedShow.value = true; | 334 | deprecatedShow.value = true; |
| 266 | }; | 335 | }; |
| 267 | -const handleAuthCompany = () => { | 336 | + |
| 337 | +// 提交作废表单 | ||
| 338 | +const sunmitDeprecated = () => { | ||
| 339 | + const data = { | ||
| 340 | + associationapprove: deprecatedForm.value.associationapprove, | ||
| 341 | + comment: deprecatedForm.value.deprecatedReason, | ||
| 342 | + }; | ||
| 343 | + const taskId = deprecatedForm.value.taskId; | ||
| 344 | + disposeUser(data, taskId).then((res) => { | ||
| 345 | + proxy.$modal.msgSuccess("保单已退回"); | ||
| 346 | + }); | ||
| 347 | +}; | ||
| 348 | +// 分配承保公司 | ||
| 349 | +const handleAuthCompany = (associationapprove, taskId) => { | ||
| 350 | + companyForm.value = { | ||
| 351 | + associationapprove, | ||
| 352 | + taskId, | ||
| 353 | + }; | ||
| 268 | companyShow.value = true; | 354 | companyShow.value = true; |
| 355 | + getDeptList(); | ||
| 356 | +}; | ||
| 357 | + | ||
| 358 | +/** 查询部门列表 */ | ||
| 359 | +const getDeptList = () => { | ||
| 360 | + loading.value = true; | ||
| 361 | + listDept(companyQueryParams).then((response) => { | ||
| 362 | + deptOptions.value = response.data.filter((item) => item.parentId === 100); | ||
| 363 | + loading.value = false; | ||
| 364 | + }); | ||
| 269 | }; | 365 | }; |
| 366 | + | ||
| 270 | /** 重置操作表单 */ | 367 | /** 重置操作表单 */ |
| 271 | function reset() { | 368 | function reset() { |
| 272 | form.value = { | 369 | form.value = { |
| @@ -287,15 +384,23 @@ function handleUpdate(row) { | @@ -287,15 +384,23 @@ function handleUpdate(row) { | ||
| 287 | form.value = row; | 384 | form.value = row; |
| 288 | open.value = true; | 385 | open.value = true; |
| 289 | } | 386 | } |
| 290 | -/** 提交按钮 */ | 387 | +/** 提交通过分配承保公司 */ |
| 291 | function submitForm() { | 388 | function submitForm() { |
| 292 | - proxy.$refs["policyRef"].validate((valid) => { | ||
| 293 | - if (valid) { | ||
| 294 | - proxy.$modal.msgSuccess("修改成功"); | ||
| 295 | - } | 389 | + const data = { |
| 390 | + associationapprove: companyForm.value.associationapprove, | ||
| 391 | + deptId: companyForm.value.deptId, | ||
| 392 | + }; | ||
| 393 | + const taskId = companyForm.value.taskId; | ||
| 394 | + disposeUser(data, taskId).then((res) => { | ||
| 395 | + companyShow.value = true; | ||
| 396 | + proxy.$modal.msgSuccess("保单已分配成功"); | ||
| 296 | }); | 397 | }); |
| 297 | } | 398 | } |
| 298 | 399 | ||
| 400 | +const getMsg = (val) => { | ||
| 401 | + deprecatedForm.value.deprecatedReason = val; | ||
| 402 | +}; | ||
| 403 | + | ||
| 299 | getList(); | 404 | getList(); |
| 300 | </script> | 405 | </script> |
| 301 | 406 |
| @@ -116,16 +116,16 @@ | @@ -116,16 +116,16 @@ | ||
| 116 | </el-form-item> | 116 | </el-form-item> |
| 117 | </el-form> | 117 | </el-form> |
| 118 | <!-- 数据统计 --> | 118 | <!-- 数据统计 --> |
| 119 | - <div class="total_line"> | 119 | + <!-- <div class="total_line"> |
| 120 | <span>统计:平安保险公司(10条)</span> | 120 | <span>统计:平安保险公司(10条)</span> |
| 121 | <span>已办结:3</span> | 121 | <span>已办结:3</span> |
| 122 | <span>未办结:3</span> | 122 | <span>未办结:3</span> |
| 123 | <span>待承接:2</span> | 123 | <span>待承接:2</span> |
| 124 | <span>已承接:2</span> | 124 | <span>已承接:2</span> |
| 125 | - </div> | 125 | + </div> --> |
| 126 | 126 | ||
| 127 | <!-- 表格数据 --> | 127 | <!-- 表格数据 --> |
| 128 | - <el-table v-loading="loading" :data="policyList" @row-click="handleUpdate"> | 128 | + <el-table v-loading="loading" :data="policyList"> |
| 129 | <el-table-column label="序号" type="index" /> | 129 | <el-table-column label="序号" type="index" /> |
| 130 | <el-table-column | 130 | <el-table-column |
| 131 | label="登记时间" | 131 | label="登记时间" |
| @@ -183,8 +183,8 @@ | @@ -183,8 +183,8 @@ | ||
| 183 | width="100" | 183 | width="100" |
| 184 | prop="Feedback" | 184 | prop="Feedback" |
| 185 | > | 185 | > |
| 186 | - <template #default> | ||
| 187 | - <el-button type="primary">查阅</el-button> | 186 | + <template #default="{ row }"> |
| 187 | + <el-button type="primary" @click="handleUpdate(row)">查阅</el-button> | ||
| 188 | </template> | 188 | </template> |
| 189 | </el-table-column> | 189 | </el-table-column> |
| 190 | </el-table> | 190 | </el-table> |
| @@ -205,7 +205,7 @@ | @@ -205,7 +205,7 @@ | ||
| 205 | <el-input | 205 | <el-input |
| 206 | v-model="form.licensePlateNumber" | 206 | v-model="form.licensePlateNumber" |
| 207 | placeholder="请输入车牌号" | 207 | placeholder="请输入车牌号" |
| 208 | - disabled | 208 | + :disabled="hasRole" |
| 209 | /> | 209 | /> |
| 210 | </el-form-item> | 210 | </el-form-item> |
| 211 | </el-col> | 211 | </el-col> |
| @@ -213,7 +213,7 @@ | @@ -213,7 +213,7 @@ | ||
| 213 | <el-form-item label="车架号" prop="frameNumber"> | 213 | <el-form-item label="车架号" prop="frameNumber"> |
| 214 | <el-input | 214 | <el-input |
| 215 | v-model="form.frameNumber" | 215 | v-model="form.frameNumber" |
| 216 | - disabled | 216 | + :disabled="hasRole" |
| 217 | placeholder="请输入车架号" | 217 | placeholder="请输入车架号" |
| 218 | /> | 218 | /> |
| 219 | </el-form-item> | 219 | </el-form-item> |
| @@ -224,7 +224,7 @@ | @@ -224,7 +224,7 @@ | ||
| 224 | <el-form-item label="车主姓名" prop="name"> | 224 | <el-form-item label="车主姓名" prop="name"> |
| 225 | <el-input | 225 | <el-input |
| 226 | v-model="form.name" | 226 | v-model="form.name" |
| 227 | - disabled | 227 | + :disabled="hasRole" |
| 228 | placeholder="请输入车主姓名" | 228 | placeholder="请输入车主姓名" |
| 229 | /> | 229 | /> |
| 230 | </el-form-item> | 230 | </el-form-item> |
| @@ -233,7 +233,7 @@ | @@ -233,7 +233,7 @@ | ||
| 233 | <el-form-item label="联系电话" prop="phone"> | 233 | <el-form-item label="联系电话" prop="phone"> |
| 234 | <el-input | 234 | <el-input |
| 235 | v-model="form.phone" | 235 | v-model="form.phone" |
| 236 | - disabled | 236 | + :disabled="hasRole" |
| 237 | placeholder="请输入联系电话" | 237 | placeholder="请输入联系电话" |
| 238 | /> | 238 | /> |
| 239 | </el-form-item> | 239 | </el-form-item> |
| @@ -244,7 +244,7 @@ | @@ -244,7 +244,7 @@ | ||
| 244 | <el-form-item label="车辆类型" prop="vehicleType"> | 244 | <el-form-item label="车辆类型" prop="vehicleType"> |
| 245 | <el-input | 245 | <el-input |
| 246 | v-model="form.vehicleType" | 246 | v-model="form.vehicleType" |
| 247 | - disabled | 247 | + :disabled="hasRole" |
| 248 | placeholder="请输入登记时间" | 248 | placeholder="请输入登记时间" |
| 249 | /> | 249 | /> |
| 250 | </el-form-item> | 250 | </el-form-item> |
| @@ -253,7 +253,7 @@ | @@ -253,7 +253,7 @@ | ||
| 253 | <el-form-item label="车辆使用性质" prop="vehicleNature"> | 253 | <el-form-item label="车辆使用性质" prop="vehicleNature"> |
| 254 | <el-input | 254 | <el-input |
| 255 | v-model="form.vehicleNature" | 255 | v-model="form.vehicleNature" |
| 256 | - disabled | 256 | + :disabled="hasRole" |
| 257 | placeholder="请输入办理人" | 257 | placeholder="请输入办理人" |
| 258 | /> | 258 | /> |
| 259 | </el-form-item> | 259 | </el-form-item> |
| @@ -264,7 +264,7 @@ | @@ -264,7 +264,7 @@ | ||
| 264 | <el-form-item label="核定载客数" prop="passengersNumber"> | 264 | <el-form-item label="核定载客数" prop="passengersNumber"> |
| 265 | <el-input | 265 | <el-input |
| 266 | v-model="form.passengersNumber" | 266 | v-model="form.passengersNumber" |
| 267 | - disabled | 267 | + :disabled="hasRole" |
| 268 | placeholder="请输入办理人" | 268 | placeholder="请输入办理人" |
| 269 | /> | 269 | /> |
| 270 | </el-form-item> | 270 | </el-form-item> |
| @@ -273,7 +273,7 @@ | @@ -273,7 +273,7 @@ | ||
| 273 | <el-form-item label="核定载质量" prop="passengerCapacity"> | 273 | <el-form-item label="核定载质量" prop="passengerCapacity"> |
| 274 | <el-input | 274 | <el-input |
| 275 | v-model="form.passengerCapacity" | 275 | v-model="form.passengerCapacity" |
| 276 | - disabled | 276 | + :disabled="hasRole" |
| 277 | placeholder="请输入承保公司" | 277 | placeholder="请输入承保公司" |
| 278 | /> | 278 | /> |
| 279 | </el-form-item> | 279 | </el-form-item> |
| @@ -284,7 +284,7 @@ | @@ -284,7 +284,7 @@ | ||
| 284 | <el-form-item label="排量毫升" prop="emissions"> | 284 | <el-form-item label="排量毫升" prop="emissions"> |
| 285 | <el-input | 285 | <el-input |
| 286 | v-model="form.emissions" | 286 | v-model="form.emissions" |
| 287 | - disabled | 287 | + :disabled="hasRole" |
| 288 | placeholder="请输入办理人" | 288 | placeholder="请输入办理人" |
| 289 | /> | 289 | /> |
| 290 | </el-form-item> | 290 | </el-form-item> |
| @@ -293,7 +293,7 @@ | @@ -293,7 +293,7 @@ | ||
| 293 | <el-form-item label="中文品牌" prop="vehicleBrand"> | 293 | <el-form-item label="中文品牌" prop="vehicleBrand"> |
| 294 | <el-input | 294 | <el-input |
| 295 | v-model="form.vehicleBrand" | 295 | v-model="form.vehicleBrand" |
| 296 | - disabled | 296 | + :disabled="hasRole" |
| 297 | placeholder="请输入办理人" | 297 | placeholder="请输入办理人" |
| 298 | /> | 298 | /> |
| 299 | </el-form-item> | 299 | </el-form-item> |
| @@ -304,7 +304,7 @@ | @@ -304,7 +304,7 @@ | ||
| 304 | <el-form-item label="车辆型号" prop="vehicleModel"> | 304 | <el-form-item label="车辆型号" prop="vehicleModel"> |
| 305 | <el-input | 305 | <el-input |
| 306 | v-model="form.vehicleModel" | 306 | v-model="form.vehicleModel" |
| 307 | - disabled | 307 | + :disabled="hasRole" |
| 308 | placeholder="请输入办理人" | 308 | placeholder="请输入办理人" |
| 309 | /> | 309 | /> |
| 310 | </el-form-item> | 310 | </el-form-item> |
| @@ -313,7 +313,7 @@ | @@ -313,7 +313,7 @@ | ||
| 313 | <el-form-item label="准牵引准质量" prop="tractionMass"> | 313 | <el-form-item label="准牵引准质量" prop="tractionMass"> |
| 314 | <el-input | 314 | <el-input |
| 315 | v-model="form.tractionMass" | 315 | v-model="form.tractionMass" |
| 316 | - disabled | 316 | + :disabled="hasRole" |
| 317 | placeholder="请输入办理人" | 317 | placeholder="请输入办理人" |
| 318 | /> | 318 | /> |
| 319 | </el-form-item> | 319 | </el-form-item> |
| @@ -324,7 +324,7 @@ | @@ -324,7 +324,7 @@ | ||
| 324 | <el-form-item label="保险需求" prop="requirements"> | 324 | <el-form-item label="保险需求" prop="requirements"> |
| 325 | <el-input | 325 | <el-input |
| 326 | v-model="form.requirements" | 326 | v-model="form.requirements" |
| 327 | - disabled | 327 | + :disabled="hasRole" |
| 328 | placeholder="请输入办理人" | 328 | placeholder="请输入办理人" |
| 329 | /> | 329 | /> |
| 330 | </el-form-item> | 330 | </el-form-item> |
| @@ -333,27 +333,25 @@ | @@ -333,27 +333,25 @@ | ||
| 333 | <el-form-item label="承保单号" prop="policyNumber"> | 333 | <el-form-item label="承保单号" prop="policyNumber"> |
| 334 | <el-input | 334 | <el-input |
| 335 | v-model="form.policyNumber" | 335 | v-model="form.policyNumber" |
| 336 | - disabled | 336 | + :disabled="hasRole" |
| 337 | placeholder="请输入办理人" | 337 | placeholder="请输入办理人" |
| 338 | /> | 338 | /> |
| 339 | </el-form-item> | 339 | </el-form-item> |
| 340 | </el-col> | 340 | </el-col> |
| 341 | </el-row> | 341 | </el-row> |
| 342 | <el-form-item label="保单回馈" prop="progress"> | 342 | <el-form-item label="保单回馈" prop="progress"> |
| 343 | - <el-input | ||
| 344 | - :rows="6" | ||
| 345 | - disabled | ||
| 346 | - type="textarea" | ||
| 347 | - placeholder="请输入保单回馈" | ||
| 348 | - v-model="form.message" | ||
| 349 | - resize="none" | ||
| 350 | - /> | 343 | + <QuillEditor :value="form.comment" @updateValue="getMsg" /> |
| 351 | </el-form-item> | 344 | </el-form-item> |
| 352 | </el-form> | 345 | </el-form> |
| 353 | <template #footer> | 346 | <template #footer> |
| 354 | <div class="dialog-footer"> | 347 | <div class="dialog-footer"> |
| 355 | <el-button @click="open = false">取消</el-button> | 348 | <el-button @click="open = false">取消</el-button> |
| 356 | - <el-button type="primary" @click="open = false">确定</el-button> | 349 | + <el-button |
| 350 | + type="primary" | ||
| 351 | + v-hasPermi="['policy:info:edit']" | ||
| 352 | + @click="submit" | ||
| 353 | + >提交</el-button | ||
| 354 | + > | ||
| 357 | </div> | 355 | </div> |
| 358 | </template> | 356 | </template> |
| 359 | </el-dialog> | 357 | </el-dialog> |
| @@ -361,7 +359,7 @@ | @@ -361,7 +359,7 @@ | ||
| 361 | </template> | 359 | </template> |
| 362 | 360 | ||
| 363 | <script setup> | 361 | <script setup> |
| 364 | -import { queryList, queryResult } from "@/api/policy"; | 362 | +import { queryList, queryResult, updateCarInfo } from "@/api/policy"; |
| 365 | const { proxy } = getCurrentInstance(); | 363 | const { proxy } = getCurrentInstance(); |
| 366 | const loading = ref(false); | 364 | const loading = ref(false); |
| 367 | const total = ref(5); | 365 | const total = ref(5); |
| @@ -382,6 +380,9 @@ const queryParams = reactive({ | @@ -382,6 +380,9 @@ const queryParams = reactive({ | ||
| 382 | startTime: "", | 380 | startTime: "", |
| 383 | endTime: "", | 381 | endTime: "", |
| 384 | }); | 382 | }); |
| 383 | +const hasRole = computed(() => { | ||
| 384 | + return !proxy.$auth.hasRole("associationemployee"); | ||
| 385 | +}); | ||
| 385 | const timeFrame = ref(null); | 386 | const timeFrame = ref(null); |
| 386 | const statusOption = ref([ | 387 | const statusOption = ref([ |
| 387 | { | 388 | { |
| @@ -442,14 +443,23 @@ function reset() { | @@ -442,14 +443,23 @@ function reset() { | ||
| 442 | /** 修改按钮操作 */ | 443 | /** 修改按钮操作 */ |
| 443 | function handleUpdate(row) { | 444 | function handleUpdate(row) { |
| 444 | reset(); | 445 | reset(); |
| 445 | - queryResult({ processInstanceId: row.processInstanceId }).then((res) => { | 446 | + if (row.policyStatus === "已作废") { |
| 446 | form.value = row; | 447 | form.value = row; |
| 447 | - form.value.policyNumber = res?.data?.policyNumber; | ||
| 448 | - form.value.message = res?.data?.message; | ||
| 449 | open.value = true; | 448 | open.value = true; |
| 450 | - }); | 449 | + } else { |
| 450 | + queryResult({ processInstanceId: row.processInstanceId }).then((res) => { | ||
| 451 | + form.value = row; | ||
| 452 | + form.value.policyNumber = res?.data?.policyNumber; | ||
| 453 | + form.value.comment = res?.data?.message; | ||
| 454 | + open.value = true; | ||
| 455 | + }); | ||
| 456 | + } | ||
| 451 | } | 457 | } |
| 452 | 458 | ||
| 459 | +const getMsg = (val) => { | ||
| 460 | + form.value.comment = val; | ||
| 461 | +}; | ||
| 462 | + | ||
| 453 | /** 搜索按钮操作 */ | 463 | /** 搜索按钮操作 */ |
| 454 | function handleQuery() { | 464 | function handleQuery() { |
| 455 | queryParams.value.pageNum = 1; | 465 | queryParams.value.pageNum = 1; |
| @@ -460,7 +470,13 @@ function resetQuery() { | @@ -460,7 +470,13 @@ function resetQuery() { | ||
| 460 | proxy.resetForm("queryRef"); | 470 | proxy.resetForm("queryRef"); |
| 461 | handleQuery(); | 471 | handleQuery(); |
| 462 | } | 472 | } |
| 463 | - | 473 | +const submit = async () => { |
| 474 | + updateCarInfo(form.value).then((response) => { | ||
| 475 | + proxy.$modal.msgSuccess("修改成功"); | ||
| 476 | + open.value = false; | ||
| 477 | + getList(); | ||
| 478 | + }); | ||
| 479 | +}; | ||
| 464 | getList(); | 480 | getList(); |
| 465 | </script> | 481 | </script> |
| 466 | 482 |
-
请 注册 或 登录 后发表评论