正在显示
16 个修改的文件
包含
3180 行增加
和
15 行删除
| @@ -136,6 +136,6 @@ export function getCompanyTip() { | @@ -136,6 +136,6 @@ export function getCompanyTip() { | ||
| 136 | export function getCount() { | 136 | export function getCount() { |
| 137 | return request({ | 137 | return request({ |
| 138 | url: `/system/rule/getCounting`, | 138 | url: `/system/rule/getCounting`, |
| 139 | - method: 'post' | 139 | + method: 'get' |
| 140 | }) | 140 | }) |
| 141 | } | 141 | } |
| 1 | +<template> | ||
| 2 | + <div class="app-container"> | ||
| 3 | + <!-- 筛选条件 --> | ||
| 4 | + <el-form | ||
| 5 | + :model="queryParams" | ||
| 6 | + ref="queryRef" | ||
| 7 | + v-show="showSearch" | ||
| 8 | + :inline="true" | ||
| 9 | + label-width="68px" | ||
| 10 | + > | ||
| 11 | + <el-form-item label="车主姓名" prop="name"> | ||
| 12 | + <el-input | ||
| 13 | + v-model="queryParams.name" | ||
| 14 | + placeholder="请输入名称" | ||
| 15 | + clearable | ||
| 16 | + style="width: 200px" | ||
| 17 | + @keyup.enter="handleQuery" | ||
| 18 | + /> | ||
| 19 | + </el-form-item> | ||
| 20 | + <el-form-item label="车牌号" prop="licensePlate"> | ||
| 21 | + <el-input | ||
| 22 | + v-model="queryParams.licensePlate" | ||
| 23 | + placeholder="请输入车牌号" | ||
| 24 | + clearable | ||
| 25 | + style="width: 200px" | ||
| 26 | + @keyup.enter="handleQuery" | ||
| 27 | + /> | ||
| 28 | + </el-form-item> | ||
| 29 | + <el-form-item label="操作人员" prop="association"> | ||
| 30 | + <el-input | ||
| 31 | + v-model="queryParams.association" | ||
| 32 | + placeholder="填写操作人员" | ||
| 33 | + clearable | ||
| 34 | + style="width: 200px" | ||
| 35 | + @keyup.enter="handleQuery" | ||
| 36 | + /> | ||
| 37 | + </el-form-item> | ||
| 38 | + <el-form-item> | ||
| 39 | + <el-button type="primary" icon="Search" @click="handleQuery" | ||
| 40 | + >查询</el-button | ||
| 41 | + > | ||
| 42 | + <el-button icon="Refresh" @click="resetQuery">重置</el-button> | ||
| 43 | + </el-form-item> | ||
| 44 | + </el-form> | ||
| 45 | + | ||
| 46 | + <!-- 表格数据 --> | ||
| 47 | + <el-table v-loading="loading" :data="policyList" @row-click="handleUpdate"> | ||
| 48 | + <el-table-column type="selection" width="55" align="center" /> | ||
| 49 | + <el-table-column label="序号" type="index" width="55" align="center" /> | ||
| 50 | + <el-table-column | ||
| 51 | + label="登记时间" | ||
| 52 | + prop="createTime" | ||
| 53 | + width="160" | ||
| 54 | + align="center" | ||
| 55 | + /> | ||
| 56 | + <el-table-column | ||
| 57 | + label="车牌号" | ||
| 58 | + prop="licensePlateNumber" | ||
| 59 | + width="150" | ||
| 60 | + align="center" | ||
| 61 | + /> | ||
| 62 | + <el-table-column | ||
| 63 | + label="车架号" | ||
| 64 | + prop="frameNumber" | ||
| 65 | + align="center" | ||
| 66 | + :show-overflow-tooltip="true" | ||
| 67 | + /> | ||
| 68 | + <el-table-column | ||
| 69 | + label="企业名称" | ||
| 70 | + prop="businessName" | ||
| 71 | + width="100" | ||
| 72 | + align="center" | ||
| 73 | + /> | ||
| 74 | + <el-table-column | ||
| 75 | + label="统一信用代码" | ||
| 76 | + prop="uniformCreditCode" | ||
| 77 | + width="180" | ||
| 78 | + align="center" | ||
| 79 | + /> | ||
| 80 | + <el-table-column | ||
| 81 | + label="联系电话" | ||
| 82 | + prop="businessPhone" | ||
| 83 | + width="150" | ||
| 84 | + align="center" | ||
| 85 | + /> | ||
| 86 | + <el-table-column | ||
| 87 | + label="作废时间" | ||
| 88 | + align="center" | ||
| 89 | + prop="distributionTime" | ||
| 90 | + width="160" | ||
| 91 | + /> | ||
| 92 | + <el-table-column | ||
| 93 | + label="操作人员" | ||
| 94 | + align="center" | ||
| 95 | + prop="associationEmployeeUserName" | ||
| 96 | + width="120" | ||
| 97 | + /> | ||
| 98 | + <el-table-column label="作废备注" width="120" fixed="right" prop="remark"> | ||
| 99 | + <template #default> | ||
| 100 | + <el-button type="primary">查阅</el-button> | ||
| 101 | + </template> | ||
| 102 | + </el-table-column> | ||
| 103 | + </el-table> | ||
| 104 | + | ||
| 105 | + <pagination | ||
| 106 | + v-show="total > 0" | ||
| 107 | + :total="total" | ||
| 108 | + v-model:page="queryParams.pageNum" | ||
| 109 | + v-model:limit="queryParams.pageSize" | ||
| 110 | + @pagination="getList" | ||
| 111 | + /> | ||
| 112 | + | ||
| 113 | + <el-dialog v-model="open" title="保单信息" width="700" append-to-body> | ||
| 114 | + <el-form :model="form" ref="policyRef" label-width="100px"> | ||
| 115 | + <el-row> | ||
| 116 | + <el-col :span="12"> | ||
| 117 | + <el-form-item label="车牌号" prop="licensePlateNumber"> | ||
| 118 | + <el-input | ||
| 119 | + v-model="form.licensePlateNumber" | ||
| 120 | + placeholder="请输入车牌号" | ||
| 121 | + disabled | ||
| 122 | + /> | ||
| 123 | + </el-form-item> | ||
| 124 | + </el-col> | ||
| 125 | + <el-col :span="12"> | ||
| 126 | + <el-form-item label="车架号" prop="frameNumber"> | ||
| 127 | + <el-input | ||
| 128 | + v-model="form.frameNumber" | ||
| 129 | + disabled | ||
| 130 | + placeholder="请输入车架号" | ||
| 131 | + /> | ||
| 132 | + </el-form-item> | ||
| 133 | + </el-col> | ||
| 134 | + </el-row> | ||
| 135 | + <el-row> | ||
| 136 | + <el-col :span="12"> | ||
| 137 | + <el-form-item label="企业名称" prop="businessName"> | ||
| 138 | + <el-input | ||
| 139 | + v-model="form.businessName" | ||
| 140 | + :disabled="!hasRole" | ||
| 141 | + placeholder="请输入企业名称" | ||
| 142 | + /> | ||
| 143 | + </el-form-item> | ||
| 144 | + </el-col> | ||
| 145 | + <el-col :span="12"> | ||
| 146 | + <el-form-item label="联系电话" prop="businessPhone"> | ||
| 147 | + <el-input | ||
| 148 | + v-model="form.businessPhone" | ||
| 149 | + :disabled="!hasRole" | ||
| 150 | + placeholder="请输入联系电话" | ||
| 151 | + /> | ||
| 152 | + </el-form-item> | ||
| 153 | + </el-col> | ||
| 154 | + </el-row> | ||
| 155 | + <el-row> | ||
| 156 | + <el-col :span="12"> | ||
| 157 | + <el-form-item label="发动机号" prop="engineNumber"> | ||
| 158 | + <el-input v-model="form.engineNumber" placeholder="无" disabled /> | ||
| 159 | + </el-form-item> | ||
| 160 | + </el-col> | ||
| 161 | + <el-col :span="12"> | ||
| 162 | + <el-form-item label="上年承保公司" prop="sysDeptName"> | ||
| 163 | + <el-input | ||
| 164 | + v-model="form.sysDeptName" | ||
| 165 | + disabled | ||
| 166 | + placeholder="请输入上年承保公司" | ||
| 167 | + /> | ||
| 168 | + </el-form-item> | ||
| 169 | + </el-col> | ||
| 170 | + </el-row> | ||
| 171 | + <el-row> | ||
| 172 | + <el-col :span="12"> | ||
| 173 | + <el-form-item label="信用代码" prop="uniformCreditCode"> | ||
| 174 | + <el-input | ||
| 175 | + v-model="form.uniformCreditCode" | ||
| 176 | + :disabled="!hasRole" | ||
| 177 | + placeholder="请输入信用代码" | ||
| 178 | + /> | ||
| 179 | + </el-form-item> | ||
| 180 | + </el-col> | ||
| 181 | + <el-col :span="12"> | ||
| 182 | + <el-form-item label="保险需求" prop="requirements"> | ||
| 183 | + <el-input v-model="form.requirements" disabled placeholder="无" /> | ||
| 184 | + </el-form-item> | ||
| 185 | + </el-col> | ||
| 186 | + <el-col :span="12"> | ||
| 187 | + <el-form-item label="使用性质" prop="vehicleNature"> | ||
| 188 | + <el-input | ||
| 189 | + v-model="form.vehicleNature" | ||
| 190 | + disabled | ||
| 191 | + placeholder="无" | ||
| 192 | + /> | ||
| 193 | + </el-form-item> | ||
| 194 | + </el-col> | ||
| 195 | + </el-row> | ||
| 196 | + <el-form-item label="作废原因" prop="progress"> | ||
| 197 | + <QuillEditor :value="form.deprecatedReason" @updateValue="getMsg" /> | ||
| 198 | + </el-form-item> | ||
| 199 | + </el-form> | ||
| 200 | + </el-dialog> | ||
| 201 | + </div> | ||
| 202 | +</template> | ||
| 203 | + | ||
| 204 | +<script setup> | ||
| 205 | +import { queryDeprecatedList, queryDefeatContent } from "@/api/policy"; | ||
| 206 | +const { proxy } = getCurrentInstance(); | ||
| 207 | +const loading = ref(false); | ||
| 208 | +const total = ref(5); | ||
| 209 | +const open = ref(false); | ||
| 210 | +const form = ref({}); | ||
| 211 | +const showSearch = ref(true); | ||
| 212 | +const queryParams = reactive({ | ||
| 213 | + pageNum: 1, | ||
| 214 | + pageSize: 10, | ||
| 215 | + name: "", | ||
| 216 | + type: 1, | ||
| 217 | + licensePlate: "", | ||
| 218 | + association: "", | ||
| 219 | +}); | ||
| 220 | + | ||
| 221 | +const policyList = ref([]); | ||
| 222 | + | ||
| 223 | +/** 重置操作表单 */ | ||
| 224 | +function reset() { | ||
| 225 | + proxy.resetForm("policyRef"); | ||
| 226 | +} | ||
| 227 | + | ||
| 228 | +/** 查阅操作 */ | ||
| 229 | +const handleUpdate = async (row) => { | ||
| 230 | + reset(); | ||
| 231 | + form.value = row; | ||
| 232 | + const { data } = await queryDefeatContent({ | ||
| 233 | + processInstanceId: row.processInstanceId, | ||
| 234 | + type: 2, | ||
| 235 | + }); | ||
| 236 | + form.value.deprecatedReason = data.message; | ||
| 237 | + open.value = true; | ||
| 238 | +}; | ||
| 239 | +const getList = async () => { | ||
| 240 | + loading.value = true; | ||
| 241 | + const res = await queryDeprecatedList(queryParams); | ||
| 242 | + policyList.value = res.rows; | ||
| 243 | + total.value = res.total; | ||
| 244 | + loading.value = false; | ||
| 245 | +}; | ||
| 246 | + | ||
| 247 | +/** 搜索按钮操作 */ | ||
| 248 | +function handleQuery() { | ||
| 249 | + queryParams.pageNum = 1; | ||
| 250 | + getList(); | ||
| 251 | +} | ||
| 252 | +/** 重置按钮操作 */ | ||
| 253 | +function resetQuery() { | ||
| 254 | + proxy.resetForm("queryRef"); | ||
| 255 | + handleQuery(); | ||
| 256 | +} | ||
| 257 | +const getMsg = (val) => { | ||
| 258 | + console.log(val); | ||
| 259 | +}; | ||
| 260 | + | ||
| 261 | +getList(); | ||
| 262 | +</script> | ||
| 263 | + | ||
| 264 | +<style></style> |
src/views/businessPolicy/ended/index.vue
0 → 100644
| 1 | +<template> | ||
| 2 | + <div class="app-container"> | ||
| 3 | + <!-- 筛选条件 --> | ||
| 4 | + <el-form | ||
| 5 | + :model="queryParams" | ||
| 6 | + ref="queryRef" | ||
| 7 | + v-show="showSearch" | ||
| 8 | + :inline="true" | ||
| 9 | + label-width="68px" | ||
| 10 | + > | ||
| 11 | + <el-form-item label="用户姓名" prop="name"> | ||
| 12 | + <el-input | ||
| 13 | + v-model="queryParams.name" | ||
| 14 | + placeholder="请输入名称" | ||
| 15 | + clearable | ||
| 16 | + style="width: 200px" | ||
| 17 | + @keyup.enter="handleQuery" | ||
| 18 | + /> | ||
| 19 | + </el-form-item> | ||
| 20 | + <el-form-item label="车牌号" prop="licensePlate"> | ||
| 21 | + <el-input | ||
| 22 | + v-model="queryParams.licensePlate" | ||
| 23 | + placeholder="请输入车牌号" | ||
| 24 | + clearable | ||
| 25 | + style="width: 200px" | ||
| 26 | + @keyup.enter="handleQuery" | ||
| 27 | + /> | ||
| 28 | + </el-form-item> | ||
| 29 | + <el-form-item label="操作人员" prop="association"> | ||
| 30 | + <el-input | ||
| 31 | + v-model="queryParams.association" | ||
| 32 | + placeholder="填写操作人员" | ||
| 33 | + clearable | ||
| 34 | + style="width: 200px" | ||
| 35 | + @keyup.enter="handleQuery" | ||
| 36 | + /> | ||
| 37 | + </el-form-item> | ||
| 38 | + <el-form-item label="分配机制" prop="associationapprovetype"> | ||
| 39 | + <el-select | ||
| 40 | + v-model="queryParams.associationapprovetype" | ||
| 41 | + placeholder="系统分配" | ||
| 42 | + clearable | ||
| 43 | + style="width: 200px" | ||
| 44 | + > | ||
| 45 | + <el-option | ||
| 46 | + v-for="dict in options" | ||
| 47 | + :key="dict.value" | ||
| 48 | + :label="dict.label" | ||
| 49 | + :value="dict.value" | ||
| 50 | + /> | ||
| 51 | + </el-select> | ||
| 52 | + </el-form-item> | ||
| 53 | + <el-form-item> | ||
| 54 | + <el-button type="primary" icon="Search" @click="handleQuery" | ||
| 55 | + >查询</el-button | ||
| 56 | + > | ||
| 57 | + <el-button icon="Refresh" @click="resetQuery">重置</el-button> | ||
| 58 | + </el-form-item> | ||
| 59 | + </el-form> | ||
| 60 | + | ||
| 61 | + <!-- 表格数据 --> | ||
| 62 | + <el-table v-loading="loading" :data="policyList"> | ||
| 63 | + <el-table-column label="登记时间" width="160" align="center"> | ||
| 64 | + <template #default="{ row }"> | ||
| 65 | + <span>{{ row.initialRegistration || row.createTime }}</span> | ||
| 66 | + </template> | ||
| 67 | + </el-table-column> | ||
| 68 | + <el-table-column | ||
| 69 | + label="车牌号" | ||
| 70 | + prop="licensePlateNumber" | ||
| 71 | + width="150" | ||
| 72 | + align="center" | ||
| 73 | + /> | ||
| 74 | + <el-table-column | ||
| 75 | + label="车架号" | ||
| 76 | + prop="frameNumber" | ||
| 77 | + width="240" | ||
| 78 | + align="center" | ||
| 79 | + /> | ||
| 80 | + <el-table-column | ||
| 81 | + label="企业名称" | ||
| 82 | + prop="businessName" | ||
| 83 | + width="100" | ||
| 84 | + align="center" | ||
| 85 | + /> | ||
| 86 | + <el-table-column | ||
| 87 | + label="统一信用代码" | ||
| 88 | + prop="uniformCreditCode" | ||
| 89 | + width="180" | ||
| 90 | + align="center" | ||
| 91 | + /> | ||
| 92 | + <el-table-column | ||
| 93 | + label="联系电话" | ||
| 94 | + prop="businessPhone" | ||
| 95 | + width="150" | ||
| 96 | + align="center" | ||
| 97 | + /> | ||
| 98 | + <el-table-column | ||
| 99 | + label="分配机制" | ||
| 100 | + width="120" | ||
| 101 | + prop="distributionMechanism" | ||
| 102 | + align="center" | ||
| 103 | + /> | ||
| 104 | + <el-table-column | ||
| 105 | + label="承保公司" | ||
| 106 | + prop="companyName" | ||
| 107 | + width="150" | ||
| 108 | + align="center" | ||
| 109 | + /> | ||
| 110 | + <el-table-column label="操作人员" width="150" align="center"> | ||
| 111 | + <template #default="{ row }"> | ||
| 112 | + <span>{{ | ||
| 113 | + row.associationEmployeeUserName || row.companyEmployeeUserName | ||
| 114 | + }}</span> | ||
| 115 | + </template> | ||
| 116 | + </el-table-column> | ||
| 117 | + <el-table-column | ||
| 118 | + label="办结时间" | ||
| 119 | + prop="policyTime" | ||
| 120 | + width="160" | ||
| 121 | + align="center" | ||
| 122 | + /> | ||
| 123 | + <el-table-column | ||
| 124 | + label="办理人" | ||
| 125 | + prop="companyEmployeeUserName" | ||
| 126 | + width="150" | ||
| 127 | + align="center" | ||
| 128 | + /> | ||
| 129 | + <el-table-column | ||
| 130 | + label="保单状态" | ||
| 131 | + width="100" | ||
| 132 | + prop="statue" | ||
| 133 | + align="center" | ||
| 134 | + > | ||
| 135 | + <template #default="{ row }"> | ||
| 136 | + <span | ||
| 137 | + :style="{ color: row.status === '进行中' ? '#409EFF' : '#67C23A' }" | ||
| 138 | + >{{ row.policyStatus }}</span | ||
| 139 | + > | ||
| 140 | + </template> | ||
| 141 | + </el-table-column> | ||
| 142 | + <el-table-column | ||
| 143 | + label="保单回馈" | ||
| 144 | + fixed="right" | ||
| 145 | + width="100" | ||
| 146 | + show-overflow-tooltip | ||
| 147 | + prop="Feedback" | ||
| 148 | + > | ||
| 149 | + <template #default="{ row }"> | ||
| 150 | + <el-button type="primary" @click="lookRemark(row)">查阅</el-button> | ||
| 151 | + </template> | ||
| 152 | + </el-table-column> | ||
| 153 | + </el-table> | ||
| 154 | + | ||
| 155 | + <pagination | ||
| 156 | + v-show="total > 0" | ||
| 157 | + :total="total" | ||
| 158 | + v-model:page="queryParams.pageNum" | ||
| 159 | + v-model:limit="queryParams.pageSize" | ||
| 160 | + @pagination="getList" | ||
| 161 | + /> | ||
| 162 | + <!-- 查看回馈弹出框 --> | ||
| 163 | + <el-dialog v-model="open" title="保单信息" width="700" append-to-body> | ||
| 164 | + <el-form :model="form" ref="policyRef" label-width="100px"> | ||
| 165 | + <el-row> | ||
| 166 | + <el-col :span="12"> | ||
| 167 | + <el-form-item label="车牌号" prop="licensePlateNumber"> | ||
| 168 | + <el-input | ||
| 169 | + v-model="form.licensePlateNumber" | ||
| 170 | + placeholder="请输入车牌号" | ||
| 171 | + disabled | ||
| 172 | + /> | ||
| 173 | + </el-form-item> | ||
| 174 | + </el-col> | ||
| 175 | + <el-col :span="12"> | ||
| 176 | + <el-form-item label="车架号" prop="frameNumber"> | ||
| 177 | + <el-input | ||
| 178 | + v-model="form.frameNumber" | ||
| 179 | + disabled | ||
| 180 | + placeholder="请输入车架号" | ||
| 181 | + /> | ||
| 182 | + </el-form-item> | ||
| 183 | + </el-col> | ||
| 184 | + </el-row> | ||
| 185 | + <el-row> | ||
| 186 | + <el-col :span="12"> | ||
| 187 | + <el-form-item label="企业名称" prop="businessName"> | ||
| 188 | + <el-input | ||
| 189 | + v-model="form.businessName" | ||
| 190 | + :disabled="!hasRole" | ||
| 191 | + placeholder="请输入企业名称" | ||
| 192 | + /> | ||
| 193 | + </el-form-item> | ||
| 194 | + </el-col> | ||
| 195 | + <el-col :span="12"> | ||
| 196 | + <el-form-item label="联系电话" prop="businessPhone"> | ||
| 197 | + <el-input | ||
| 198 | + v-model="form.businessPhone" | ||
| 199 | + :disabled="!hasRole" | ||
| 200 | + placeholder="请输入联系电话" | ||
| 201 | + /> | ||
| 202 | + </el-form-item> | ||
| 203 | + </el-col> | ||
| 204 | + </el-row> | ||
| 205 | + <el-row> | ||
| 206 | + <el-col :span="12"> | ||
| 207 | + <el-form-item label="发动机号" prop="engineNumber"> | ||
| 208 | + <el-input v-model="form.engineNumber" placeholder="无" disabled /> | ||
| 209 | + </el-form-item> | ||
| 210 | + </el-col> | ||
| 211 | + <el-col :span="12"> | ||
| 212 | + <el-form-item label="上年承保公司" prop="sysDeptName"> | ||
| 213 | + <el-input | ||
| 214 | + v-model="form.sysDeptName" | ||
| 215 | + disabled | ||
| 216 | + placeholder="请输入上年承保公司" | ||
| 217 | + /> | ||
| 218 | + </el-form-item> | ||
| 219 | + </el-col> | ||
| 220 | + </el-row> | ||
| 221 | + <el-row> | ||
| 222 | + <el-col :span="12"> | ||
| 223 | + <el-form-item label="分配机制" prop="distributionMechanism"> | ||
| 224 | + <el-input | ||
| 225 | + v-model="form.distributionMechanism" | ||
| 226 | + disabled | ||
| 227 | + placeholder="无" | ||
| 228 | + /> | ||
| 229 | + </el-form-item> | ||
| 230 | + </el-col> | ||
| 231 | + <el-col :span="12"> | ||
| 232 | + <el-form-item label="信用代码" prop="uniformCreditCode"> | ||
| 233 | + <el-input | ||
| 234 | + v-model="form.uniformCreditCode" | ||
| 235 | + :disabled="!hasRole" | ||
| 236 | + placeholder="请输入信用代码" | ||
| 237 | + /> | ||
| 238 | + </el-form-item> | ||
| 239 | + </el-col> | ||
| 240 | + </el-row> | ||
| 241 | + <el-row> | ||
| 242 | + <el-col :span="12"> | ||
| 243 | + <el-form-item label="保险需求" prop="requirements"> | ||
| 244 | + <el-input | ||
| 245 | + v-model="form.requirements" | ||
| 246 | + disabled | ||
| 247 | + placeholder="请输入办理人" | ||
| 248 | + /> | ||
| 249 | + </el-form-item> | ||
| 250 | + </el-col> | ||
| 251 | + <el-col :span="12"> | ||
| 252 | + <el-form-item label="使用性质" prop="vehicleNature"> | ||
| 253 | + <el-input | ||
| 254 | + v-model="form.vehicleNature" | ||
| 255 | + disabled | ||
| 256 | + placeholder="无" | ||
| 257 | + /> | ||
| 258 | + </el-form-item> | ||
| 259 | + </el-col> | ||
| 260 | + </el-row> | ||
| 261 | + <el-row> | ||
| 262 | + <el-col :span="12"> | ||
| 263 | + <el-form-item label="强险单号" prop="strongInsurancePolicyNumber"> | ||
| 264 | + <el-input | ||
| 265 | + v-model="form.strongInsurancePolicyNumber" | ||
| 266 | + disabled | ||
| 267 | + placeholder="请输入承保单号" | ||
| 268 | + /> | ||
| 269 | + </el-form-item> | ||
| 270 | + </el-col> | ||
| 271 | + <el-col :span="12"> | ||
| 272 | + <el-form-item | ||
| 273 | + label="商险单号" | ||
| 274 | + prop="commercialInsurancePolicyNumber" | ||
| 275 | + > | ||
| 276 | + <el-input | ||
| 277 | + v-model="form.commercialInsurancePolicyNumber" | ||
| 278 | + disabled | ||
| 279 | + placeholder="请输入承保单号" | ||
| 280 | + /> | ||
| 281 | + </el-form-item> | ||
| 282 | + </el-col> | ||
| 283 | + </el-row> | ||
| 284 | + <el-form-item label="保单回馈" prop="progress"> | ||
| 285 | + <QuillEditor :value="form.message" @updateValue="getMsg" /> | ||
| 286 | + </el-form-item> | ||
| 287 | + </el-form> | ||
| 288 | + </el-dialog> | ||
| 289 | + </div> | ||
| 290 | +</template> | ||
| 291 | + | ||
| 292 | +<script setup> | ||
| 293 | +import { queryEndedList, queryResult } from "@/api/policy"; | ||
| 294 | +const { proxy } = getCurrentInstance(); | ||
| 295 | +const loading = ref(false); | ||
| 296 | +const total = ref(5); | ||
| 297 | +const open = ref(false); | ||
| 298 | +const form = ref({}); | ||
| 299 | +const timer = ref(null); | ||
| 300 | +const showSearch = ref(true); | ||
| 301 | +const hasRole = computed(() => { | ||
| 302 | + return !proxy.$auth.hasRole("associationemployee"); | ||
| 303 | +}); | ||
| 304 | +const queryParams = reactive({ | ||
| 305 | + pageNum: 1, | ||
| 306 | + pageSize: 10, | ||
| 307 | + name: "", | ||
| 308 | + type: 1, | ||
| 309 | + licensePlate: "", | ||
| 310 | + association: "", | ||
| 311 | + associationapprovetype: "", | ||
| 312 | +}); | ||
| 313 | + | ||
| 314 | +const options = [ | ||
| 315 | + { | ||
| 316 | + value: 0, | ||
| 317 | + label: "系统分配", | ||
| 318 | + }, | ||
| 319 | + { | ||
| 320 | + value: 1, | ||
| 321 | + label: "人工分配", | ||
| 322 | + }, | ||
| 323 | +]; | ||
| 324 | + | ||
| 325 | +const policyList = ref([]); | ||
| 326 | + | ||
| 327 | +/** 多选框选中数据 */ | ||
| 328 | +function handleSelectionChange(selection) { | ||
| 329 | + // ids.value = selection.map(item => item.roleId); | ||
| 330 | + // single.value = selection.length != 1; | ||
| 331 | + // multiple.value = !selection.length; | ||
| 332 | + console.log(selection); | ||
| 333 | +} | ||
| 334 | +/** 重置操作表单 */ | ||
| 335 | +function reset() { | ||
| 336 | + proxy.resetForm("policyRef"); | ||
| 337 | +} | ||
| 338 | + | ||
| 339 | +/**查看保单回馈 */ | ||
| 340 | +function lookRemark(row) { | ||
| 341 | + reset(); | ||
| 342 | + queryResult({ processInstanceId: row.processInstanceId }).then((res) => { | ||
| 343 | + form.value = row; | ||
| 344 | + form.value.strongInsurancePolicyNumber = | ||
| 345 | + res?.data?.strongInsurancePolicyNumber; | ||
| 346 | + form.value.commercialInsurancePolicyNumber = | ||
| 347 | + res?.data?.commercialInsurancePolicyNumber; | ||
| 348 | + form.value.message = res?.data?.message; | ||
| 349 | + open.value = true; | ||
| 350 | + }); | ||
| 351 | +} | ||
| 352 | +const getList = async () => { | ||
| 353 | + loading.value = true; | ||
| 354 | + const res = await queryEndedList(queryParams); | ||
| 355 | + policyList.value = res.rows; | ||
| 356 | + total.value = res.total; | ||
| 357 | + loading.value = false; | ||
| 358 | +}; | ||
| 359 | + | ||
| 360 | +/** 搜索按钮操作 */ | ||
| 361 | +function handleQuery() { | ||
| 362 | + queryParams.pageNum = 1; | ||
| 363 | + getList(); | ||
| 364 | +} | ||
| 365 | +/** 重置按钮操作 */ | ||
| 366 | +function resetQuery() { | ||
| 367 | + proxy.resetForm("queryRef"); | ||
| 368 | + handleQuery(); | ||
| 369 | +} | ||
| 370 | +const getMsg = (val) => { | ||
| 371 | + clearTimeout(timer.value); | ||
| 372 | + timer.value = setTimeout(() => { | ||
| 373 | + form.value.message = val; | ||
| 374 | + }, 1000); | ||
| 375 | +}; | ||
| 376 | +getList(); | ||
| 377 | +</script> | ||
| 378 | + | ||
| 379 | +<style></style> |
src/views/businessPolicy/myPending/index.vue
0 → 100644
| 1 | +<template> | ||
| 2 | + <div class="app-container"> | ||
| 3 | + <!-- 表格数据 --> | ||
| 4 | + <el-table v-loading="loading" :data="policyList" @row-click="handleUpdate"> | ||
| 5 | + <el-table-column label="序号" width="55" type="index" /> | ||
| 6 | + <el-table-column | ||
| 7 | + label="登记时间" | ||
| 8 | + width="160" | ||
| 9 | + prop="createTime" | ||
| 10 | + align="center" | ||
| 11 | + /> | ||
| 12 | + <el-table-column | ||
| 13 | + label="车牌号" | ||
| 14 | + prop="licensePlateNumber" | ||
| 15 | + align="center" | ||
| 16 | + /> | ||
| 17 | + <el-table-column | ||
| 18 | + label="车架号" | ||
| 19 | + prop="frameNumber" | ||
| 20 | + align="center" | ||
| 21 | + :show-overflow-tooltip="true" | ||
| 22 | + /> | ||
| 23 | + <el-table-column | ||
| 24 | + label="发动机号" | ||
| 25 | + prop="engineNumber" | ||
| 26 | + align="center" | ||
| 27 | + :show-overflow-tooltip="true" | ||
| 28 | + /> | ||
| 29 | + <el-table-column label="车主姓名" prop="name" align="center" /> | ||
| 30 | + <el-table-column label="联系电话" prop="phone" align="center" /> | ||
| 31 | + <el-table-column label="是否新能源" prop="isNewEnergy" align="center" /> | ||
| 32 | + <el-table-column label="上年承保公司" prop="sysDeptName" align="center" /> | ||
| 33 | + <el-table-column label="保单进度" prop="orderProgress" align="center" /> | ||
| 34 | + <el-table-column label="保单状态" prop="policyStatus" align="center" /> | ||
| 35 | + </el-table> | ||
| 36 | + | ||
| 37 | + <pagination | ||
| 38 | + v-show="total > 0" | ||
| 39 | + :total="total" | ||
| 40 | + v-model:page="queryParams.pageNum" | ||
| 41 | + v-model:limit="queryParams.pageSize" | ||
| 42 | + @pagination="getList" | ||
| 43 | + /> | ||
| 44 | + | ||
| 45 | + <!-- 转办分配对话框 --> | ||
| 46 | + <el-dialog | ||
| 47 | + v-model="transferShow" | ||
| 48 | + title="请选择人员:" | ||
| 49 | + width="500" | ||
| 50 | + append-to-body | ||
| 51 | + > | ||
| 52 | + <div class="company_box"> | ||
| 53 | + <el-radio-group v-model="transferForm.username"> | ||
| 54 | + <el-radio | ||
| 55 | + v-for="item in transferOptions" | ||
| 56 | + :key="item.userName" | ||
| 57 | + :label="item.userName" | ||
| 58 | + >{{ item.userName }}</el-radio | ||
| 59 | + > | ||
| 60 | + </el-radio-group> | ||
| 61 | + <div v-show="transferOptions.length === 0">暂无其他员工</div> | ||
| 62 | + </div> | ||
| 63 | + <template #footer> | ||
| 64 | + <div class="dialog-footer"> | ||
| 65 | + <el-button @click="companyShow = false">取消</el-button> | ||
| 66 | + <el-button type="primary" @click="submitTransfer">确定</el-button> | ||
| 67 | + </div> | ||
| 68 | + </template> | ||
| 69 | + </el-dialog> | ||
| 70 | + | ||
| 71 | + <!-- 编辑对话框 --> | ||
| 72 | + <el-dialog v-model="open" :title="title" width="700" append-to-body> | ||
| 73 | + <el-form :model="form" ref="policyRef" label-width="100px"> | ||
| 74 | + <el-row> | ||
| 75 | + <el-col :span="12"> | ||
| 76 | + <el-form-item label="车牌号" prop="licensePlateNumber"> | ||
| 77 | + <el-input | ||
| 78 | + v-model="form.licensePlateNumber" | ||
| 79 | + placeholder="请输入车牌号" | ||
| 80 | + disabled | ||
| 81 | + /> | ||
| 82 | + </el-form-item> | ||
| 83 | + </el-col> | ||
| 84 | + <el-col :span="12"> | ||
| 85 | + <el-form-item label="车架号" prop="frameNumber"> | ||
| 86 | + <el-input | ||
| 87 | + v-model="form.frameNumber" | ||
| 88 | + disabled | ||
| 89 | + placeholder="请输入车架号" | ||
| 90 | + /> | ||
| 91 | + </el-form-item> | ||
| 92 | + </el-col> | ||
| 93 | + </el-row> | ||
| 94 | + <el-row> | ||
| 95 | + <el-col :span="12"> | ||
| 96 | + <el-form-item label="车主姓名" prop="name"> | ||
| 97 | + <el-input | ||
| 98 | + v-model="form.name" | ||
| 99 | + disabled | ||
| 100 | + placeholder="请输入车主姓名" | ||
| 101 | + /> | ||
| 102 | + </el-form-item> | ||
| 103 | + </el-col> | ||
| 104 | + <el-col :span="12"> | ||
| 105 | + <el-form-item label="联系电话" prop="phone"> | ||
| 106 | + <el-input | ||
| 107 | + v-model="form.phone" | ||
| 108 | + disabled | ||
| 109 | + placeholder="请输入联系电话" | ||
| 110 | + /> | ||
| 111 | + </el-form-item> | ||
| 112 | + </el-col> | ||
| 113 | + </el-row> | ||
| 114 | + <el-row> | ||
| 115 | + <el-col :span="12"> | ||
| 116 | + <el-form-item label="发动机号" prop="engineNumber"> | ||
| 117 | + <el-input v-model="form.engineNumber" placeholder="无" disabled /> | ||
| 118 | + </el-form-item> | ||
| 119 | + </el-col> | ||
| 120 | + <el-col :span="12"> | ||
| 121 | + <el-form-item label="上年承保公司" prop="sysDeptName"> | ||
| 122 | + <el-input | ||
| 123 | + v-model="form.sysDeptName" | ||
| 124 | + disabled | ||
| 125 | + placeholder="请输入上年承保公司" | ||
| 126 | + /> | ||
| 127 | + </el-form-item> | ||
| 128 | + </el-col> | ||
| 129 | + </el-row> | ||
| 130 | + <el-row> | ||
| 131 | + <el-col :span="12"> | ||
| 132 | + <el-form-item label="保险需求" prop="requirements"> | ||
| 133 | + <el-input v-model="form.requirements" disabled placeholder="无" /> | ||
| 134 | + </el-form-item> | ||
| 135 | + </el-col> | ||
| 136 | + <el-col :span="12"> | ||
| 137 | + <el-form-item label="使用性质" prop="vehicleNature"> | ||
| 138 | + <el-input | ||
| 139 | + v-model="form.vehicleNature" | ||
| 140 | + disabled | ||
| 141 | + placeholder="无" | ||
| 142 | + /> | ||
| 143 | + </el-form-item> | ||
| 144 | + </el-col> | ||
| 145 | + </el-row> | ||
| 146 | + </el-form> | ||
| 147 | + </el-dialog> | ||
| 148 | + </div> | ||
| 149 | +</template> | ||
| 150 | + | ||
| 151 | +<script setup> | ||
| 152 | +import { queryPengdingList, getUserList } from "@/api/policy/index"; | ||
| 153 | +const loading = ref(false); | ||
| 154 | +const { proxy } = getCurrentInstance(); | ||
| 155 | +const total = ref(0); | ||
| 156 | +const title = ref("保单信息"); | ||
| 157 | +const open = ref(false); | ||
| 158 | +const transferShow = ref(false); | ||
| 159 | +const form = ref({}); | ||
| 160 | +const transferForm = ref({}); | ||
| 161 | +const transferOptions = ref([]); | ||
| 162 | +const rules = ref({ | ||
| 163 | + carNum: [{ required: true, message: "车牌号不能为空", trigger: "blur" }], | ||
| 164 | + frameNum: [{ required: true, message: "车架号不能为空", trigger: "blur" }], | ||
| 165 | + name: [{ required: true, message: "车主姓名不能为空", trigger: "blur" }], | ||
| 166 | + createTime: [{ required: true, message: "日期不能为空", trigger: "blur" }], | ||
| 167 | + phone: [ | ||
| 168 | + { | ||
| 169 | + pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/, | ||
| 170 | + message: "请输入正确的手机号码", | ||
| 171 | + trigger: "blur", | ||
| 172 | + }, | ||
| 173 | + ], | ||
| 174 | +}); | ||
| 175 | +const companyShow = ref(false); | ||
| 176 | +const queryParams = reactive({ | ||
| 177 | + pageNum: 1, | ||
| 178 | + pageSize: 10, | ||
| 179 | + type: 1, | ||
| 180 | +}); | ||
| 181 | +const policyList = ref([]); | ||
| 182 | + | ||
| 183 | +/** 重置操作表单 */ | ||
| 184 | +function reset() { | ||
| 185 | + proxy.resetForm("policyRef"); | ||
| 186 | +} | ||
| 187 | + | ||
| 188 | +// 获取处理的列表 | ||
| 189 | +const getList = async () => { | ||
| 190 | + loading.value = true; | ||
| 191 | + const { rows, total: all } = await queryPengdingList(queryParams); | ||
| 192 | + policyList.value = rows; | ||
| 193 | + total.value = all; | ||
| 194 | + loading.value = false; | ||
| 195 | +}; | ||
| 196 | + | ||
| 197 | +// 转办或分配 | ||
| 198 | +const handleSharing = (id) => { | ||
| 199 | + transferForm.value.taskId = id; | ||
| 200 | + getUser(); | ||
| 201 | + transferShow.value = true; | ||
| 202 | +}; | ||
| 203 | + | ||
| 204 | +// 获取人员列表 | ||
| 205 | +const getUser = async () => { | ||
| 206 | + const { data } = await getUserList(); | ||
| 207 | + transferOptions.value = data; | ||
| 208 | +}; | ||
| 209 | + | ||
| 210 | +/** 提交通过分配转办人员 */ | ||
| 211 | +function submitTransfer() { | ||
| 212 | + const data = { | ||
| 213 | + username: transferForm.value.username, | ||
| 214 | + }; | ||
| 215 | + const taskId = transferForm.value.taskId; | ||
| 216 | + transfer(data, taskId).then((res) => { | ||
| 217 | + transferShow.value = false; | ||
| 218 | + getList(); | ||
| 219 | + proxy.$modal.msgSuccess("保单已分配成功"); | ||
| 220 | + }); | ||
| 221 | +} | ||
| 222 | +const handleUpdate = (row) => { | ||
| 223 | + reset(); | ||
| 224 | + form.value = row; | ||
| 225 | + // isCustom.value = data.isCustomizeBrandAndModel == "0"; | ||
| 226 | + open.value = true; | ||
| 227 | +}; | ||
| 228 | +getList(); | ||
| 229 | +</script> | ||
| 230 | + | ||
| 231 | +<style lang="scss" scoped> | ||
| 232 | +::v-deep(.el-radio-group) { | ||
| 233 | + align-items: start; | ||
| 234 | + flex-direction: column; | ||
| 235 | +} | ||
| 236 | +.header_top { | ||
| 237 | + display: flex; | ||
| 238 | + align-items: center; | ||
| 239 | + gap: 30px; | ||
| 240 | + margin-bottom: 20px; | ||
| 241 | +} | ||
| 242 | +</style> |
src/views/businessPolicy/ongoing/index.vue
0 → 100644
| 1 | +<template> | ||
| 2 | + <div class="app-container"> | ||
| 3 | + <!-- 筛选条件 --> | ||
| 4 | + <el-form | ||
| 5 | + :model="queryParams" | ||
| 6 | + ref="queryRef" | ||
| 7 | + v-show="showSearch" | ||
| 8 | + :inline="true" | ||
| 9 | + label-width="68px" | ||
| 10 | + > | ||
| 11 | + <el-form-item label="用户姓名" prop="name"> | ||
| 12 | + <el-input | ||
| 13 | + v-model="queryParams.name" | ||
| 14 | + placeholder="请输入名称" | ||
| 15 | + clearable | ||
| 16 | + style="width: 200px" | ||
| 17 | + @keyup.enter="handleQuery" | ||
| 18 | + /> | ||
| 19 | + </el-form-item> | ||
| 20 | + <el-form-item label="车牌号" prop="licensePlate"> | ||
| 21 | + <el-input | ||
| 22 | + v-model="queryParams.licensePlate" | ||
| 23 | + placeholder="请输入车牌号" | ||
| 24 | + clearable | ||
| 25 | + style="width: 200px" | ||
| 26 | + @keyup.enter="handleQuery" | ||
| 27 | + /> | ||
| 28 | + </el-form-item> | ||
| 29 | + <el-form-item label="操作人员" prop="association"> | ||
| 30 | + <el-input | ||
| 31 | + v-model="queryParams.association" | ||
| 32 | + placeholder="填写操作人员" | ||
| 33 | + clearable | ||
| 34 | + style="width: 200px" | ||
| 35 | + @keyup.enter="handleQuery" | ||
| 36 | + /> | ||
| 37 | + </el-form-item> | ||
| 38 | + <el-form-item label="分配机制" prop="associationapprovetype"> | ||
| 39 | + <el-select | ||
| 40 | + v-model="queryParams.associationapprovetype" | ||
| 41 | + placeholder="系统分配" | ||
| 42 | + clearable | ||
| 43 | + style="width: 200px" | ||
| 44 | + > | ||
| 45 | + <el-option | ||
| 46 | + v-for="dict in options" | ||
| 47 | + :key="dict.value" | ||
| 48 | + :label="dict.label" | ||
| 49 | + :value="dict.value" | ||
| 50 | + /> | ||
| 51 | + </el-select> | ||
| 52 | + </el-form-item> | ||
| 53 | + <el-form-item label="保单进度" prop="orderprogress"> | ||
| 54 | + <el-select | ||
| 55 | + v-model="queryParams.orderprogress" | ||
| 56 | + placeholder="选择进度" | ||
| 57 | + clearable | ||
| 58 | + style="width: 200px" | ||
| 59 | + > | ||
| 60 | + <el-option | ||
| 61 | + v-for="dict in progressOption" | ||
| 62 | + :key="dict.value" | ||
| 63 | + :label="dict.label" | ||
| 64 | + :value="dict.value" | ||
| 65 | + /> | ||
| 66 | + </el-select> | ||
| 67 | + </el-form-item> | ||
| 68 | + <el-form-item label="保单状态" prop="status"> | ||
| 69 | + <el-select | ||
| 70 | + v-model="queryParams.status" | ||
| 71 | + placeholder="选择进度" | ||
| 72 | + clearable | ||
| 73 | + style="width: 200px" | ||
| 74 | + > | ||
| 75 | + <el-option | ||
| 76 | + v-for="dict in statusOption" | ||
| 77 | + :key="dict.value" | ||
| 78 | + :label="dict.label" | ||
| 79 | + :value="dict.value" | ||
| 80 | + /> | ||
| 81 | + </el-select> | ||
| 82 | + </el-form-item> | ||
| 83 | + <el-form-item> | ||
| 84 | + <el-button type="primary" icon="Search" @click="handleQuery" | ||
| 85 | + >查询</el-button | ||
| 86 | + > | ||
| 87 | + <el-button icon="Refresh" @click="resetQuery">重置</el-button> | ||
| 88 | + </el-form-item> | ||
| 89 | + </el-form> | ||
| 90 | + | ||
| 91 | + <!-- 表格数据 --> | ||
| 92 | + <el-table v-loading="loading" :data="policyList" @row-click="handleUpdate"> | ||
| 93 | + <el-table-column label="序号" type="index" width="55" /> | ||
| 94 | + <el-table-column | ||
| 95 | + label="登记时间" | ||
| 96 | + prop="createTime" | ||
| 97 | + width="160" | ||
| 98 | + align="center" | ||
| 99 | + /> | ||
| 100 | + <el-table-column | ||
| 101 | + label="车牌号" | ||
| 102 | + prop="licensePlateNumber" | ||
| 103 | + width="150" | ||
| 104 | + align="center" | ||
| 105 | + /> | ||
| 106 | + <el-table-column | ||
| 107 | + label="车架号" | ||
| 108 | + prop="frameNumber" | ||
| 109 | + width="240" | ||
| 110 | + align="center" | ||
| 111 | + /> | ||
| 112 | + <el-table-column | ||
| 113 | + label="企业名称" | ||
| 114 | + prop="businessName" | ||
| 115 | + width="100" | ||
| 116 | + align="center" | ||
| 117 | + /> | ||
| 118 | + <el-table-column | ||
| 119 | + label="统一信用代码" | ||
| 120 | + prop="uniformCreditCode" | ||
| 121 | + width="180" | ||
| 122 | + align="center" | ||
| 123 | + /> | ||
| 124 | + <el-table-column | ||
| 125 | + label="联系电话" | ||
| 126 | + prop="businessPhone" | ||
| 127 | + width="150" | ||
| 128 | + align="center" | ||
| 129 | + /> | ||
| 130 | + <el-table-column | ||
| 131 | + label="分配机制" | ||
| 132 | + width="120" | ||
| 133 | + prop="distributionMechanism" | ||
| 134 | + align="center" | ||
| 135 | + /> | ||
| 136 | + <el-table-column | ||
| 137 | + label="承保公司" | ||
| 138 | + prop="companyName" | ||
| 139 | + width="180" | ||
| 140 | + align="center" | ||
| 141 | + /> | ||
| 142 | + <el-table-column label="操作人员" width="150" align="center"> | ||
| 143 | + <template #default="{ row }"> | ||
| 144 | + <span>{{ | ||
| 145 | + row.associationEmployeeUserName || row.companyEmployeeUserName | ||
| 146 | + }}</span> | ||
| 147 | + </template> | ||
| 148 | + </el-table-column> | ||
| 149 | + <el-table-column label="操作时间" width="160" align="center"> | ||
| 150 | + <template #default="{ row }"> | ||
| 151 | + <span>{{ | ||
| 152 | + row.companyEmployeeUndertakeTime || row.distributionTime | ||
| 153 | + }}</span> | ||
| 154 | + </template> | ||
| 155 | + </el-table-column> | ||
| 156 | + | ||
| 157 | + <el-table-column | ||
| 158 | + label="办理人" | ||
| 159 | + prop="companyEmployeeUserName" | ||
| 160 | + width="150" | ||
| 161 | + align="center" | ||
| 162 | + /> | ||
| 163 | + <el-table-column | ||
| 164 | + label="保单进度" | ||
| 165 | + width="100" | ||
| 166 | + prop="orderProgress" | ||
| 167 | + align="center" | ||
| 168 | + /> | ||
| 169 | + <el-table-column | ||
| 170 | + label="操作" | ||
| 171 | + v-hasRole="['companyadmin']" | ||
| 172 | + align="center" | ||
| 173 | + min-width="120" | ||
| 174 | + fixed="right" | ||
| 175 | + > | ||
| 176 | + <template #default="{ row }"> | ||
| 177 | + <el-button | ||
| 178 | + type="primary" | ||
| 179 | + v-show="row.orderProgress !== '已承接'" | ||
| 180 | + @click.stop="handleTransfer(row.taskId)" | ||
| 181 | + >分配/转办</el-button | ||
| 182 | + > | ||
| 183 | + </template> | ||
| 184 | + </el-table-column> | ||
| 185 | + </el-table> | ||
| 186 | + | ||
| 187 | + <pagination | ||
| 188 | + v-show="total > 0" | ||
| 189 | + :total="total" | ||
| 190 | + v-model:page="queryParams.pageNum" | ||
| 191 | + v-model:limit="queryParams.pageSize" | ||
| 192 | + @pagination="getList" | ||
| 193 | + /> | ||
| 194 | + | ||
| 195 | + <!-- 转办分配对话框 --> | ||
| 196 | + <el-dialog | ||
| 197 | + v-model="transferShow" | ||
| 198 | + title="请选择人员:" | ||
| 199 | + width="500" | ||
| 200 | + append-to-body | ||
| 201 | + > | ||
| 202 | + <div class="company_box"> | ||
| 203 | + <el-radio-group v-model="transferForm.username"> | ||
| 204 | + <el-radio | ||
| 205 | + v-for="item in transferOptions" | ||
| 206 | + :key="item.userName" | ||
| 207 | + :label="item.userName" | ||
| 208 | + >{{ item.nickName }}</el-radio | ||
| 209 | + > | ||
| 210 | + </el-radio-group> | ||
| 211 | + <div v-show="transferOptions.length === 0">暂无其他员工</div> | ||
| 212 | + </div> | ||
| 213 | + <template #footer> | ||
| 214 | + <div class="dialog-footer"> | ||
| 215 | + <el-button @click="transferShow = false">取消</el-button> | ||
| 216 | + <el-button type="primary" @click="submitTransfer">确定</el-button> | ||
| 217 | + </div> | ||
| 218 | + </template> | ||
| 219 | + </el-dialog> | ||
| 220 | + | ||
| 221 | + <!-- 编辑对话框 --> | ||
| 222 | + <el-dialog v-model="open" title="保单信息" width="700" append-to-body> | ||
| 223 | + <el-form :model="form" ref="policyRef" label-width="100px"> | ||
| 224 | + <el-row> | ||
| 225 | + <el-col :span="12"> | ||
| 226 | + <el-form-item label="车牌号" prop="licensePlateNumber"> | ||
| 227 | + <el-input | ||
| 228 | + v-model="form.licensePlateNumber" | ||
| 229 | + placeholder="请输入车牌号" | ||
| 230 | + disabled | ||
| 231 | + /> | ||
| 232 | + </el-form-item> | ||
| 233 | + </el-col> | ||
| 234 | + <el-col :span="12"> | ||
| 235 | + <el-form-item label="车架号" prop="frameNumber"> | ||
| 236 | + <el-input | ||
| 237 | + v-model="form.frameNumber" | ||
| 238 | + disabled | ||
| 239 | + placeholder="请输入车架号" | ||
| 240 | + /> | ||
| 241 | + </el-form-item> | ||
| 242 | + </el-col> | ||
| 243 | + </el-row> | ||
| 244 | + <el-row> | ||
| 245 | + <el-col :span="12"> | ||
| 246 | + <el-form-item label="企业名称" prop="businessName"> | ||
| 247 | + <el-input | ||
| 248 | + v-model="form.businessName" | ||
| 249 | + :disabled="!hasRole" | ||
| 250 | + placeholder="请输入企业名称" | ||
| 251 | + /> | ||
| 252 | + </el-form-item> | ||
| 253 | + </el-col> | ||
| 254 | + <el-col :span="12"> | ||
| 255 | + <el-form-item label="联系电话" prop="businessPhone"> | ||
| 256 | + <el-input | ||
| 257 | + v-model="form.businessPhone" | ||
| 258 | + :disabled="!hasRole" | ||
| 259 | + placeholder="请输入联系电话" | ||
| 260 | + /> | ||
| 261 | + </el-form-item> | ||
| 262 | + </el-col> | ||
| 263 | + </el-row> | ||
| 264 | + <el-row> | ||
| 265 | + <el-col :span="12"> | ||
| 266 | + <el-form-item label="发动机号" prop="engineNumber"> | ||
| 267 | + <el-input v-model="form.engineNumber" placeholder="无" disabled /> | ||
| 268 | + </el-form-item> | ||
| 269 | + </el-col> | ||
| 270 | + <el-col :span="12"> | ||
| 271 | + <el-form-item label="上年承保公司" prop="sysDeptName"> | ||
| 272 | + <el-input | ||
| 273 | + v-model="form.sysDeptName" | ||
| 274 | + disabled | ||
| 275 | + placeholder="请输入上年承保公司" | ||
| 276 | + /> | ||
| 277 | + </el-form-item> | ||
| 278 | + </el-col> | ||
| 279 | + </el-row> | ||
| 280 | + <el-row> | ||
| 281 | + <el-col :span="12"> | ||
| 282 | + <el-form-item label="分配机制" prop="distributionMechanism"> | ||
| 283 | + <el-input | ||
| 284 | + v-model="form.distributionMechanism" | ||
| 285 | + disabled | ||
| 286 | + placeholder="无" | ||
| 287 | + /> | ||
| 288 | + </el-form-item> | ||
| 289 | + </el-col> | ||
| 290 | + <el-col :span="12"> | ||
| 291 | + <el-form-item label="信用代码" prop="uniformCreditCode"> | ||
| 292 | + <el-input | ||
| 293 | + v-model="form.uniformCreditCode" | ||
| 294 | + :disabled="!hasRole" | ||
| 295 | + placeholder="请输入信用代码" | ||
| 296 | + /> | ||
| 297 | + </el-form-item> | ||
| 298 | + </el-col> | ||
| 299 | + </el-row> | ||
| 300 | + <el-row> | ||
| 301 | + <el-col :span="12"> | ||
| 302 | + <el-form-item label="保险需求" prop="requirements"> | ||
| 303 | + <el-input v-model="form.requirements" disabled placeholder="无" /> | ||
| 304 | + </el-form-item> | ||
| 305 | + </el-col> | ||
| 306 | + <el-col :span="12"> | ||
| 307 | + <el-form-item label="使用性质" prop="vehicleNature"> | ||
| 308 | + <el-input | ||
| 309 | + v-model="form.vehicleNature" | ||
| 310 | + disabled | ||
| 311 | + placeholder="无" | ||
| 312 | + /> | ||
| 313 | + </el-form-item> | ||
| 314 | + </el-col> | ||
| 315 | + </el-row> | ||
| 316 | + </el-form> | ||
| 317 | + </el-dialog> | ||
| 318 | + </div> | ||
| 319 | +</template> | ||
| 320 | + | ||
| 321 | +<script setup> | ||
| 322 | +import { queryOngoingList, getUserList, transfer } from "@/api/policy"; | ||
| 323 | +const { proxy } = getCurrentInstance(); | ||
| 324 | +const loading = ref(false); | ||
| 325 | +const total = ref(5); | ||
| 326 | +const open = ref(false); | ||
| 327 | +const form = ref({}); | ||
| 328 | +const transferForm = ref({}); | ||
| 329 | +const transferShow = ref(false); | ||
| 330 | +const transferOptions = ref([]); | ||
| 331 | +const showSearch = ref(true); | ||
| 332 | +const queryParams = reactive({ | ||
| 333 | + pageNum: 1, | ||
| 334 | + pageSize: 10, | ||
| 335 | + name: "", | ||
| 336 | + licensePlate: "", | ||
| 337 | + association: "", | ||
| 338 | + associationapprovetype: "", | ||
| 339 | + orderprogress: "", | ||
| 340 | + policystatus: "", | ||
| 341 | + type: 1, | ||
| 342 | +}); | ||
| 343 | + | ||
| 344 | +const progressOption = ref([ | ||
| 345 | + { | ||
| 346 | + value: 0, | ||
| 347 | + label: "待承接", | ||
| 348 | + }, | ||
| 349 | + { | ||
| 350 | + value: 1, | ||
| 351 | + label: "已承接", | ||
| 352 | + }, | ||
| 353 | +]); | ||
| 354 | + | ||
| 355 | +const options = [ | ||
| 356 | + { | ||
| 357 | + value: 0, | ||
| 358 | + label: "系统分配", | ||
| 359 | + }, | ||
| 360 | + { | ||
| 361 | + value: 1, | ||
| 362 | + label: "人工分配", | ||
| 363 | + }, | ||
| 364 | +]; | ||
| 365 | +const statusOption = ref([ | ||
| 366 | + { | ||
| 367 | + value: 0, | ||
| 368 | + label: "进行中", | ||
| 369 | + }, | ||
| 370 | + { | ||
| 371 | + value: 1, | ||
| 372 | + label: "疑难件", | ||
| 373 | + }, | ||
| 374 | + { | ||
| 375 | + value: 2, | ||
| 376 | + label: "已办结", | ||
| 377 | + }, | ||
| 378 | +]); | ||
| 379 | +const policyList = ref([]); | ||
| 380 | + | ||
| 381 | +// 获取人员列表 | ||
| 382 | +const getUser = async () => { | ||
| 383 | + const { data } = await getUserList(); | ||
| 384 | + transferOptions.value = data; | ||
| 385 | +}; | ||
| 386 | +// 分配人员 | ||
| 387 | +const handleTransfer = (id) => { | ||
| 388 | + transferForm.value.taskId = id; | ||
| 389 | + getUser(); | ||
| 390 | + transferShow.value = true; | ||
| 391 | +}; | ||
| 392 | + | ||
| 393 | +// 获取进行中列表 | ||
| 394 | +const getList = async () => { | ||
| 395 | + loading.value = true; | ||
| 396 | + const res = await queryOngoingList(queryParams); | ||
| 397 | + policyList.value = res.rows; | ||
| 398 | + total.value = res.total; | ||
| 399 | + loading.value = false; | ||
| 400 | +}; | ||
| 401 | + | ||
| 402 | +/** 重置操作表单 */ | ||
| 403 | +function reset() { | ||
| 404 | + proxy.resetForm("policyRef"); | ||
| 405 | +} | ||
| 406 | + | ||
| 407 | +/** 修改按钮操作 */ | ||
| 408 | +function handleUpdate(row) { | ||
| 409 | + reset(); | ||
| 410 | + form.value = row; | ||
| 411 | + open.value = true; | ||
| 412 | +} | ||
| 413 | + | ||
| 414 | +/** 搜索按钮操作 */ | ||
| 415 | +function handleQuery() { | ||
| 416 | + queryParams.value.pageNum = 1; | ||
| 417 | + getList(); | ||
| 418 | +} | ||
| 419 | +/** 重置按钮操作 */ | ||
| 420 | +function resetQuery() { | ||
| 421 | + proxy.resetForm("queryRef"); | ||
| 422 | + handleQuery(); | ||
| 423 | +} | ||
| 424 | + | ||
| 425 | +/** 提交通过分配转办人员 */ | ||
| 426 | +function submitTransfer() { | ||
| 427 | + const data = { | ||
| 428 | + username: transferForm.value.username, | ||
| 429 | + }; | ||
| 430 | + const taskId = transferForm.value.taskId; | ||
| 431 | + transfer(data, taskId).then((res) => { | ||
| 432 | + transferShow.value = false; | ||
| 433 | + getList(); | ||
| 434 | + proxy.$modal.msgSuccess("保单已分配成功"); | ||
| 435 | + }); | ||
| 436 | +} | ||
| 437 | +getList(); | ||
| 438 | +</script> | ||
| 439 | + | ||
| 440 | +<style></style> |
src/views/businessPolicy/pending/index.vue
0 → 100644
| 1 | +<template> | ||
| 2 | + <div class="app-container"> | ||
| 3 | + <!-- 表格数据 --> | ||
| 4 | + <el-table v-loading="loading" :data="policyList" @row-click="handleTask"> | ||
| 5 | + <el-table-column label="序号" width="55" type="index" /> | ||
| 6 | + <el-table-column | ||
| 7 | + label="登记时间" | ||
| 8 | + prop="createTime" | ||
| 9 | + width="160" | ||
| 10 | + align="center" | ||
| 11 | + /> | ||
| 12 | + <el-table-column | ||
| 13 | + label="车牌号" | ||
| 14 | + prop="licensePlateNumber" | ||
| 15 | + width="150" | ||
| 16 | + align="center" | ||
| 17 | + /> | ||
| 18 | + <el-table-column | ||
| 19 | + label="车辆识别代号" | ||
| 20 | + width="180" | ||
| 21 | + prop="frameNumber" | ||
| 22 | + align="center" | ||
| 23 | + :show-overflow-tooltip="true" | ||
| 24 | + /> | ||
| 25 | + <el-table-column | ||
| 26 | + label="发动机号" | ||
| 27 | + width="180" | ||
| 28 | + prop="engineNumber" | ||
| 29 | + align="center" | ||
| 30 | + :show-overflow-tooltip="true" | ||
| 31 | + /> | ||
| 32 | + <el-table-column | ||
| 33 | + label="是否新能源" | ||
| 34 | + prop="isNewEnergy" | ||
| 35 | + width="150" | ||
| 36 | + align="center" | ||
| 37 | + /> | ||
| 38 | + <el-table-column | ||
| 39 | + label="企业名称" | ||
| 40 | + prop="businessName" | ||
| 41 | + width="100" | ||
| 42 | + align="center" | ||
| 43 | + /> | ||
| 44 | + <el-table-column | ||
| 45 | + label="统一信用代码" | ||
| 46 | + prop="uniformCreditCode" | ||
| 47 | + width="180" | ||
| 48 | + align="center" | ||
| 49 | + /> | ||
| 50 | + <el-table-column | ||
| 51 | + label="联系电话" | ||
| 52 | + prop="businessPhone" | ||
| 53 | + width="150" | ||
| 54 | + align="center" | ||
| 55 | + /> | ||
| 56 | + <el-table-column | ||
| 57 | + label="上年承保公司" | ||
| 58 | + prop="sysDeptName" | ||
| 59 | + width="150" | ||
| 60 | + align="center" | ||
| 61 | + /> | ||
| 62 | + <el-table-column | ||
| 63 | + v-hasRole="['associationemployee']" | ||
| 64 | + label="保单状态" | ||
| 65 | + width="100" | ||
| 66 | + prop="statue" | ||
| 67 | + > | ||
| 68 | + <template #default="{ row }"> | ||
| 69 | + {{ row.policyStatus || "待处理" }} | ||
| 70 | + </template> | ||
| 71 | + </el-table-column> | ||
| 72 | + <el-table-column | ||
| 73 | + label="操作" | ||
| 74 | + align="center" | ||
| 75 | + min-width="280" | ||
| 76 | + fixed="right" | ||
| 77 | + > | ||
| 78 | + <template #default="{ row }"> | ||
| 79 | + <el-button | ||
| 80 | + type="primary" | ||
| 81 | + v-hasPermi="['policy:pending:continue']" | ||
| 82 | + @click="handleContinue(row)" | ||
| 83 | + >{{ | ||
| 84 | + row.orderProgress === "已承接" ? "承接回馈" : "承接" | ||
| 85 | + }}</el-button | ||
| 86 | + > | ||
| 87 | + <el-button | ||
| 88 | + type="primary" | ||
| 89 | + v-show=" | ||
| 90 | + row.policyStatus !== '问题件' && row.orderProgress === '已承接' | ||
| 91 | + " | ||
| 92 | + v-hasPermi="['policy:pending:troubleshooting']" | ||
| 93 | + @click="handleTroubleshooting(row.taskId)" | ||
| 94 | + >问题件</el-button | ||
| 95 | + > | ||
| 96 | + <el-button | ||
| 97 | + type="primary" | ||
| 98 | + v-hasRole="['companyadmin']" | ||
| 99 | + @click="handleSharing(row.taskId)" | ||
| 100 | + >分配</el-button | ||
| 101 | + > | ||
| 102 | + <el-button | ||
| 103 | + type="primary" | ||
| 104 | + v-show="row.orderProgress !== '已承接'" | ||
| 105 | + v-hasPermi="['policy:pending:transfer']" | ||
| 106 | + @click="handleSharing(row.taskId)" | ||
| 107 | + >转办</el-button | ||
| 108 | + > | ||
| 109 | + <el-button | ||
| 110 | + type="primary" | ||
| 111 | + v-show=" | ||
| 112 | + row.policyStatus !== '问题件' && | ||
| 113 | + checkRole(['associationemployee']) | ||
| 114 | + " | ||
| 115 | + @click="handleUpdate(row)" | ||
| 116 | + >审核</el-button | ||
| 117 | + > | ||
| 118 | + <el-button | ||
| 119 | + type="primary" | ||
| 120 | + v-show=" | ||
| 121 | + row.policyStatus === '问题件' && | ||
| 122 | + checkRole(['associationemployee']) | ||
| 123 | + " | ||
| 124 | + @click="lookReason(row)" | ||
| 125 | + >查询</el-button | ||
| 126 | + > | ||
| 127 | + <el-button | ||
| 128 | + type="primary" | ||
| 129 | + v-show=" | ||
| 130 | + row.policyStatus === '问题件' && | ||
| 131 | + checkRole(['associationemployee']) | ||
| 132 | + " | ||
| 133 | + @click="handleVoid('2')" | ||
| 134 | + >作废</el-button | ||
| 135 | + > | ||
| 136 | + <el-button | ||
| 137 | + type="primary" | ||
| 138 | + v-show=" | ||
| 139 | + row.policyStatus === '问题件' && | ||
| 140 | + checkRole(['associationemployee']) | ||
| 141 | + " | ||
| 142 | + @click="handleAuthCompany('0')" | ||
| 143 | + >分配</el-button | ||
| 144 | + > | ||
| 145 | + </template> | ||
| 146 | + </el-table-column> | ||
| 147 | + </el-table> | ||
| 148 | + | ||
| 149 | + <!-- 页码 --> | ||
| 150 | + <pagination | ||
| 151 | + v-show="total > 0" | ||
| 152 | + :total="total" | ||
| 153 | + v-model:page="queryParams.pageNum" | ||
| 154 | + v-model:limit="queryParams.pageSize" | ||
| 155 | + @pagination="getList" | ||
| 156 | + /> | ||
| 157 | + | ||
| 158 | + <!-- 表单作废,退回。问题件对话框 --> | ||
| 159 | + <el-dialog | ||
| 160 | + v-model="deprecatedShow" | ||
| 161 | + :title="activeTitle" | ||
| 162 | + width="500" | ||
| 163 | + append-to-body | ||
| 164 | + > | ||
| 165 | + <QuillEditor | ||
| 166 | + :value="deprecatedForm.deprecatedReason" | ||
| 167 | + @updateValue="getReason" | ||
| 168 | + /> | ||
| 169 | + <template #footer> | ||
| 170 | + <div class="dialog-footer"> | ||
| 171 | + <el-button @click="deprecatedShow = false">取消</el-button> | ||
| 172 | + <el-button type="primary" @click="sunmitDeprecated">确定</el-button> | ||
| 173 | + </div> | ||
| 174 | + </template> | ||
| 175 | + </el-dialog> | ||
| 176 | + | ||
| 177 | + <!-- 分配承保公司对话框 --> | ||
| 178 | + <el-dialog | ||
| 179 | + v-model="companyShow" | ||
| 180 | + title="分配承保公司:" | ||
| 181 | + width="500" | ||
| 182 | + append-to-body | ||
| 183 | + > | ||
| 184 | + <div class="company_box"> | ||
| 185 | + <div class="header_top"> | ||
| 186 | + <el-input | ||
| 187 | + v-model="companyQueryParams.deptName" | ||
| 188 | + style="width: 380px" | ||
| 189 | + placeholder="请输入承保公司名称(支持模糊查询)" | ||
| 190 | + prefix-icon="Search" | ||
| 191 | + /> | ||
| 192 | + <el-button type="primary" @click="getDeptList">查询</el-button> | ||
| 193 | + </div> | ||
| 194 | + <div class="company_content"> | ||
| 195 | + <el-radio-group v-model="companyForm.deptId"> | ||
| 196 | + <el-radio | ||
| 197 | + v-for="item in deptOptions" | ||
| 198 | + :key="item.deptId" | ||
| 199 | + :label="item.deptId" | ||
| 200 | + >{{ item.deptName }}</el-radio | ||
| 201 | + > | ||
| 202 | + </el-radio-group> | ||
| 203 | + </div> | ||
| 204 | + </div> | ||
| 205 | + <template #footer> | ||
| 206 | + <div class="dialog-footer"> | ||
| 207 | + <el-button @click="companyShow = false">取消</el-button> | ||
| 208 | + <el-button type="primary" @click="submitForm">确定</el-button> | ||
| 209 | + </div> | ||
| 210 | + </template> | ||
| 211 | + </el-dialog> | ||
| 212 | + | ||
| 213 | + <!-- 转办分配对话框 --> | ||
| 214 | + <el-dialog | ||
| 215 | + v-model="transferShow" | ||
| 216 | + title="请选择人员:" | ||
| 217 | + width="500" | ||
| 218 | + append-to-body | ||
| 219 | + > | ||
| 220 | + <div class="company_box"> | ||
| 221 | + <el-radio-group v-model="transferForm.username"> | ||
| 222 | + <el-radio | ||
| 223 | + v-for="item in transferOptions" | ||
| 224 | + :key="item.userName" | ||
| 225 | + :label="item.userName" | ||
| 226 | + >{{ item.nickName }}</el-radio | ||
| 227 | + > | ||
| 228 | + </el-radio-group> | ||
| 229 | + <div v-show="transferOptions.length === 0">暂无其他员工</div> | ||
| 230 | + </div> | ||
| 231 | + <template #footer> | ||
| 232 | + <div class="dialog-footer"> | ||
| 233 | + <el-button @click="transferShow = false">取消</el-button> | ||
| 234 | + <el-button type="primary" @click="submitTransfer">确定</el-button> | ||
| 235 | + </div> | ||
| 236 | + </template> | ||
| 237 | + </el-dialog> | ||
| 238 | + | ||
| 239 | + <!-- 承接回馈对话框 --> | ||
| 240 | + <el-dialog | ||
| 241 | + v-model="showFeedback" | ||
| 242 | + title="填写承接回馈" | ||
| 243 | + width="500" | ||
| 244 | + append-to-body | ||
| 245 | + > | ||
| 246 | + <el-form :model="FeedbackForm" ref="policyRef" label-width="100px"> | ||
| 247 | + <el-form-item label="商险单号" prop="progress"> | ||
| 248 | + <el-input | ||
| 249 | + v-model="FeedbackForm.commercialinsurancepolicynumber" | ||
| 250 | + placeholder="请输入保单号" | ||
| 251 | + :disabled="hasRole" | ||
| 252 | + /> | ||
| 253 | + </el-form-item> | ||
| 254 | + <el-form-item label="强险单号" prop="progress"> | ||
| 255 | + <el-input | ||
| 256 | + v-model="FeedbackForm.stronginsurancepolicynumber" | ||
| 257 | + placeholder="请输入保单号" | ||
| 258 | + :disabled="hasRole" | ||
| 259 | + /> | ||
| 260 | + </el-form-item> | ||
| 261 | + <el-form-item label="保单回馈" prop="progress"> | ||
| 262 | + <QuillEditor :value="FeedbackForm.message" @updateValue="getMsg" /> | ||
| 263 | + </el-form-item> | ||
| 264 | + </el-form> | ||
| 265 | + <template #footer> | ||
| 266 | + <div class="dialog-footer"> | ||
| 267 | + <el-button @click="showFeedback = false">取消</el-button> | ||
| 268 | + <el-button type="primary" @click="submit">提交回馈</el-button> | ||
| 269 | + </div> | ||
| 270 | + </template> | ||
| 271 | + </el-dialog> | ||
| 272 | + | ||
| 273 | + <!-- 查询问题件弹出框 --> | ||
| 274 | + <el-dialog v-model="showIssue" title="保单信息" width="700" append-to-body> | ||
| 275 | + <el-form :model="IssueForm" ref="policyRef" label-width="100px"> | ||
| 276 | + <el-form-item label="问题件原因" prop="progress"> | ||
| 277 | + <QuillEditor :value="IssueForm.deprecatedReason" /> | ||
| 278 | + </el-form-item> | ||
| 279 | + </el-form> | ||
| 280 | + </el-dialog> | ||
| 281 | + | ||
| 282 | + <!-- 编辑对话框 --> | ||
| 283 | + <el-dialog v-model="open" title="保单信息" width="700" append-to-body> | ||
| 284 | + <el-form :model="form" ref="policyRef" label-width="100px"> | ||
| 285 | + <el-row> | ||
| 286 | + <el-col :span="12"> | ||
| 287 | + <el-form-item label="车牌号" prop="licensePlateNumber"> | ||
| 288 | + <el-input | ||
| 289 | + v-model="form.licensePlateNumber" | ||
| 290 | + placeholder="请输入车牌号" | ||
| 291 | + :disabled="!hasRole" | ||
| 292 | + /> | ||
| 293 | + </el-form-item> | ||
| 294 | + </el-col> | ||
| 295 | + <el-col :span="12"> | ||
| 296 | + <el-form-item label="车辆识别号" prop="frameNumber"> | ||
| 297 | + <el-input | ||
| 298 | + v-model="form.frameNumber" | ||
| 299 | + :disabled="!hasRole" | ||
| 300 | + placeholder="请输入车架号" | ||
| 301 | + /> | ||
| 302 | + </el-form-item> | ||
| 303 | + </el-col> | ||
| 304 | + </el-row> | ||
| 305 | + <el-row> | ||
| 306 | + <el-col :span="12"> | ||
| 307 | + <el-form-item label="企业名称" prop="businessName"> | ||
| 308 | + <el-input | ||
| 309 | + v-model="form.businessName" | ||
| 310 | + :disabled="!hasRole" | ||
| 311 | + placeholder="请输入企业名称" | ||
| 312 | + /> | ||
| 313 | + </el-form-item> | ||
| 314 | + </el-col> | ||
| 315 | + <el-col :span="12"> | ||
| 316 | + <el-form-item label="联系电话" prop="businessPhone"> | ||
| 317 | + <el-input | ||
| 318 | + v-model="form.businessPhone" | ||
| 319 | + :disabled="!hasRole" | ||
| 320 | + placeholder="请输入联系电话" | ||
| 321 | + /> | ||
| 322 | + </el-form-item> | ||
| 323 | + </el-col> | ||
| 324 | + </el-row> | ||
| 325 | + <el-row> | ||
| 326 | + <el-col :span="12"> | ||
| 327 | + <el-form-item label="上年承保公司" prop="sysDeptId"> | ||
| 328 | + <el-select | ||
| 329 | + v-model="form.sysDeptId" | ||
| 330 | + :disabled="!hasRole" | ||
| 331 | + style="width: 230px" | ||
| 332 | + > | ||
| 333 | + <el-option | ||
| 334 | + v-for="item in deptOptions" | ||
| 335 | + :key="item.deptId" | ||
| 336 | + :label="item.deptName" | ||
| 337 | + :value="item.deptId" | ||
| 338 | + /> | ||
| 339 | + </el-select> | ||
| 340 | + </el-form-item> | ||
| 341 | + </el-col> | ||
| 342 | + <el-col :span="12"> | ||
| 343 | + <el-form-item label="车辆使用性质" prop="vehicleNature"> | ||
| 344 | + <el-select | ||
| 345 | + v-model="form.vehicleNatureId" | ||
| 346 | + :disabled="!hasRole" | ||
| 347 | + style="width: 230px" | ||
| 348 | + > | ||
| 349 | + <el-option | ||
| 350 | + v-for="item in carNatureOption" | ||
| 351 | + :key="item.id" | ||
| 352 | + :label="item.name" | ||
| 353 | + :value="item.id" | ||
| 354 | + /> | ||
| 355 | + </el-select> | ||
| 356 | + </el-form-item> | ||
| 357 | + </el-col> | ||
| 358 | + </el-row> | ||
| 359 | + <el-row> | ||
| 360 | + <el-col :span="12"> | ||
| 361 | + <el-form-item label="发动机号" prop="engineNumber"> | ||
| 362 | + <el-input | ||
| 363 | + v-model="form.engineNumber" | ||
| 364 | + :disabled="!hasRole" | ||
| 365 | + placeholder="请输入发动机号" | ||
| 366 | + /> | ||
| 367 | + </el-form-item> | ||
| 368 | + </el-col> | ||
| 369 | + <el-col :span="12"> | ||
| 370 | + <el-form-item label="是否新能源" prop="isNewEnergy"> | ||
| 371 | + <el-select | ||
| 372 | + v-model="form.isNewEnergy" | ||
| 373 | + :disabled="!hasRole" | ||
| 374 | + style="width: 230px" | ||
| 375 | + > | ||
| 376 | + <el-option | ||
| 377 | + v-for="item in NewEnergyOption" | ||
| 378 | + :key="item.id" | ||
| 379 | + :label="item.name" | ||
| 380 | + :value="item.id" | ||
| 381 | + /> | ||
| 382 | + </el-select> | ||
| 383 | + </el-form-item> | ||
| 384 | + </el-col> | ||
| 385 | + </el-row> | ||
| 386 | + <el-row> | ||
| 387 | + <el-col :span="12"> | ||
| 388 | + <el-form-item label="信用代码" prop="uniformCreditCode"> | ||
| 389 | + <el-input | ||
| 390 | + v-model="form.uniformCreditCode" | ||
| 391 | + :disabled="!hasRole" | ||
| 392 | + placeholder="请输入信用代码" | ||
| 393 | + /> | ||
| 394 | + </el-form-item> | ||
| 395 | + </el-col> | ||
| 396 | + <el-col :span="12"> | ||
| 397 | + <el-form-item label="保险需求" prop="requirements"> | ||
| 398 | + <el-select | ||
| 399 | + v-model="form.requirementsId" | ||
| 400 | + :disabled="!hasRole" | ||
| 401 | + style="width: 230px" | ||
| 402 | + > | ||
| 403 | + <el-option | ||
| 404 | + v-for="item in needOption" | ||
| 405 | + :key="item.id" | ||
| 406 | + :label="item.name" | ||
| 407 | + :value="item.id" | ||
| 408 | + /> | ||
| 409 | + </el-select> | ||
| 410 | + </el-form-item> | ||
| 411 | + </el-col> | ||
| 412 | + </el-row> | ||
| 413 | + <!-- 流转提示 --> | ||
| 414 | + <div class="transferTip"> | ||
| 415 | + <span>本次订单流转:{{ transferTip }}</span> | ||
| 416 | + <el-button :loading="loadingBtn" @click="getTransferTip" | ||
| 417 | + >刷新</el-button | ||
| 418 | + > | ||
| 419 | + </div> | ||
| 420 | + </el-form> | ||
| 421 | + <template #footer> | ||
| 422 | + <div | ||
| 423 | + class="dialog-footer" | ||
| 424 | + style=" | ||
| 425 | + display: flex; | ||
| 426 | + justify-content: space-around; | ||
| 427 | + width: 65%; | ||
| 428 | + margin-left: auto; | ||
| 429 | + " | ||
| 430 | + > | ||
| 431 | + <el-button | ||
| 432 | + type="primary" | ||
| 433 | + v-hasRole="['associationemployee']" | ||
| 434 | + @click.stop="handleSuccess('0')" | ||
| 435 | + > | ||
| 436 | + 通过 | ||
| 437 | + </el-button> | ||
| 438 | + <el-button | ||
| 439 | + type="primary" | ||
| 440 | + v-hasRole="['associationemployee']" | ||
| 441 | + @click="submitUpdate" | ||
| 442 | + >保存</el-button | ||
| 443 | + > | ||
| 444 | + <el-button | ||
| 445 | + type="primary" | ||
| 446 | + v-hasRole="['associationemployee']" | ||
| 447 | + @click="handleVoid('2')" | ||
| 448 | + >作废</el-button | ||
| 449 | + > | ||
| 450 | + <el-button | ||
| 451 | + type="primary" | ||
| 452 | + v-hasRole="['associationemployee']" | ||
| 453 | + @click="handleFallback('1')" | ||
| 454 | + >退回</el-button | ||
| 455 | + > | ||
| 456 | + <el-button | ||
| 457 | + type="primary" | ||
| 458 | + v-hasRole="['associationemployee']" | ||
| 459 | + @click.stop="handleAuthCompany('0')" | ||
| 460 | + >分配</el-button | ||
| 461 | + > | ||
| 462 | + </div> | ||
| 463 | + </template> | ||
| 464 | + </el-dialog> | ||
| 465 | + </div> | ||
| 466 | +</template> | ||
| 467 | + | ||
| 468 | +<script setup> | ||
| 469 | +import { | ||
| 470 | + queryMyList, | ||
| 471 | + disposeUser, | ||
| 472 | + transfer, | ||
| 473 | + getUserList, | ||
| 474 | + updateCarInfo, | ||
| 475 | + getCarDetail, | ||
| 476 | + getCompanyTip, | ||
| 477 | + queryDefeatContent, | ||
| 478 | +} from "@/api/policy/index"; | ||
| 479 | +import { checkRole } from "@/utils/permission"; // 权限判断函数 | ||
| 480 | +import { queryCarType } from "@/api/configurationCenter/carType.js"; | ||
| 481 | +import { queryCarNature } from "@/api/configurationCenter/carNature.js"; | ||
| 482 | +import { queryNeed } from "@/api/configurationCenter/need.js"; | ||
| 483 | +import { listDept } from "@/api/system/dept"; | ||
| 484 | +const { proxy } = getCurrentInstance(); | ||
| 485 | +const loading = ref(false); | ||
| 486 | +const activeTitle = ref(""); | ||
| 487 | +const loadingBtn = ref(false); | ||
| 488 | +const showIssue = ref(false); | ||
| 489 | +const total = ref(0); | ||
| 490 | +const typeId = ref(0); // 判断类型 0 问题件 1 退回 2 作废 | ||
| 491 | +const transferTip = ref(""); //流转下一家名称 | ||
| 492 | +const transferDeptId = ref(""); // 流转的部门公司ID | ||
| 493 | +const open = ref(false); | ||
| 494 | +const timer = ref(null); | ||
| 495 | +const timerReason = ref(null); | ||
| 496 | +const form = ref({}); | ||
| 497 | +const showFeedback = ref(false); | ||
| 498 | +const transferShow = ref(false); | ||
| 499 | +const transferForm = ref({}); | ||
| 500 | +const taskId = ref(""); | ||
| 501 | +const IssueForm = ref({ | ||
| 502 | + deprecatedReason: "", | ||
| 503 | +}); | ||
| 504 | +const FeedbackForm = ref({ | ||
| 505 | + stronginsurancepolicynumber: "", | ||
| 506 | + commercialinsurancepolicynumber: "", | ||
| 507 | + message: "", | ||
| 508 | +}); | ||
| 509 | +const getParams = reactive({ | ||
| 510 | + pageNum: 1, | ||
| 511 | + pageSize: 100, | ||
| 512 | +}); | ||
| 513 | +const companyShow = ref(false); | ||
| 514 | +const deptOptions = ref([]); | ||
| 515 | +const transferOptions = ref([]); | ||
| 516 | +const deprecatedShow = ref(false); | ||
| 517 | +const deprecatedForm = ref({ | ||
| 518 | + deprecatedReason: "", | ||
| 519 | + associationapprove: "", | ||
| 520 | +}); | ||
| 521 | +const companyForm = ref({}); | ||
| 522 | +const queryParams = reactive({ | ||
| 523 | + pageNum: 1, | ||
| 524 | + pageSize: 10, | ||
| 525 | + type: 1, | ||
| 526 | +}); | ||
| 527 | +const companyQueryParams = reactive({ | ||
| 528 | + deptName: undefined, | ||
| 529 | + status: undefined, | ||
| 530 | +}); | ||
| 531 | +const policyList = ref([]); | ||
| 532 | + | ||
| 533 | +// 判断是否有权限 | ||
| 534 | +const hasRole = computed(() => { | ||
| 535 | + return proxy.$auth.hasRole("associationemployee"); | ||
| 536 | +}); | ||
| 537 | + | ||
| 538 | +// 新能源 | ||
| 539 | +const NewEnergyOption = ref([ | ||
| 540 | + { | ||
| 541 | + id: "0", | ||
| 542 | + name: "否", | ||
| 543 | + }, | ||
| 544 | + { | ||
| 545 | + id: "1", | ||
| 546 | + name: "是", | ||
| 547 | + }, | ||
| 548 | +]); | ||
| 549 | + | ||
| 550 | +// 车辆类型 | ||
| 551 | +const carTypeOption = ref([]); | ||
| 552 | +const getCarTypeOption = async () => { | ||
| 553 | + const { data } = await queryCarType(getParams); | ||
| 554 | + carTypeOption.value = data.records; | ||
| 555 | +}; | ||
| 556 | +getCarTypeOption(); | ||
| 557 | +// 车辆使用性质 | ||
| 558 | +const carNatureOption = ref([]); | ||
| 559 | +const getcarNatureOption = async () => { | ||
| 560 | + const { data } = await queryCarNature(getParams); | ||
| 561 | + carNatureOption.value = data.records; | ||
| 562 | +}; | ||
| 563 | +getcarNatureOption(); | ||
| 564 | + | ||
| 565 | +// 保险需求 | ||
| 566 | +const needOption = ref([]); | ||
| 567 | +const getNeedOption = async () => { | ||
| 568 | + const { data } = await queryNeed(getParams); | ||
| 569 | + needOption.value = data.records; | ||
| 570 | +}; | ||
| 571 | +getNeedOption(); | ||
| 572 | + | ||
| 573 | +// 赋值taskId | ||
| 574 | +const handleTask = (row) => { | ||
| 575 | + taskId.value = row.taskId; | ||
| 576 | +}; | ||
| 577 | + | ||
| 578 | +const getList = async () => { | ||
| 579 | + loading.value = true; | ||
| 580 | + const { data } = await queryMyList(queryParams); | ||
| 581 | + policyList.value = data.rows; | ||
| 582 | + total.value = data.total; | ||
| 583 | + loading.value = false; | ||
| 584 | +}; | ||
| 585 | +// 承接 | ||
| 586 | +const handleContinue = (row) => { | ||
| 587 | + if (row.orderProgress === "待承接") { | ||
| 588 | + proxy.$modal | ||
| 589 | + .confirm("是否要承接该保单") | ||
| 590 | + .then(function () {}) | ||
| 591 | + .then(() => { | ||
| 592 | + disposeUser({}, row.taskId).then((res) => { | ||
| 593 | + proxy.$modal.msgSuccess("承接成功"); | ||
| 594 | + getList(); | ||
| 595 | + }); | ||
| 596 | + }) | ||
| 597 | + .catch(() => { | ||
| 598 | + proxy.$modal.msg("已取消"); | ||
| 599 | + }); | ||
| 600 | + } else { | ||
| 601 | + reset(); | ||
| 602 | + FeedbackForm.value.taskId = row.taskId; | ||
| 603 | + showFeedback.value = true; | ||
| 604 | + } | ||
| 605 | +}; | ||
| 606 | +// 问题件 | ||
| 607 | +const handleTroubleshooting = (taskId) => { | ||
| 608 | + deprecatedForm.value.taskId = taskId; | ||
| 609 | + activeTitle.value = "问题件退回至协会"; | ||
| 610 | + typeId.value = 0; | ||
| 611 | + deprecatedShow.value = true; | ||
| 612 | +}; | ||
| 613 | +// 通过保单 | ||
| 614 | +const handleSuccess = (associationapprove) => { | ||
| 615 | + proxy.$modal | ||
| 616 | + .confirm("是否通过该保单") | ||
| 617 | + .then(function () {}) | ||
| 618 | + .then(async () => { | ||
| 619 | + await updateCarInfo(form.value); | ||
| 620 | + await disposeUser( | ||
| 621 | + { | ||
| 622 | + associationapprove, | ||
| 623 | + associationapprovetype: "0", | ||
| 624 | + deptid: transferDeptId.value, | ||
| 625 | + }, | ||
| 626 | + taskId.value | ||
| 627 | + ); | ||
| 628 | + proxy.$modal.msgSuccess("保单已通过"); | ||
| 629 | + open.value = false; | ||
| 630 | + getList(); | ||
| 631 | + }) | ||
| 632 | + .catch(() => { | ||
| 633 | + proxy.$modal.msg("取消通过"); | ||
| 634 | + }); | ||
| 635 | +}; | ||
| 636 | +// 退回保单 | ||
| 637 | +const handleFallback = (associationapprove) => { | ||
| 638 | + clearTimeout(timerReason.value); | ||
| 639 | + deprecatedForm.value = { | ||
| 640 | + associationapprove, | ||
| 641 | + taskId: taskId.value, | ||
| 642 | + }; | ||
| 643 | + deprecatedForm.value.deprecatedReason = ""; | ||
| 644 | + typeId.value = 1; | ||
| 645 | + activeTitle.value = "退回后用户需修改后重新提交"; | ||
| 646 | + deprecatedShow.value = true; | ||
| 647 | +}; | ||
| 648 | +// 作废保单 | ||
| 649 | +const handleVoid = (associationapprove) => { | ||
| 650 | + clearTimeout(timerReason.value); | ||
| 651 | + deprecatedForm.value = { | ||
| 652 | + associationapprove, | ||
| 653 | + taskId: taskId.value, | ||
| 654 | + }; | ||
| 655 | + deprecatedForm.value.deprecatedReason = ""; | ||
| 656 | + typeId.value = 2; | ||
| 657 | + activeTitle.value = | ||
| 658 | + "温馨提示:该保单作废后车牌号、车架号在本自然年度无法重新提交"; | ||
| 659 | + deprecatedShow.value = true; | ||
| 660 | +}; | ||
| 661 | +// 提交方法 | ||
| 662 | + | ||
| 663 | +// 查询问题件原因 | ||
| 664 | +const lookReason = async (row) => { | ||
| 665 | + const { data } = await queryDefeatContent({ | ||
| 666 | + processInstanceId: row.processInstanceId, | ||
| 667 | + type: 0, | ||
| 668 | + }); | ||
| 669 | + IssueForm.value.deprecatedReason = data.message; | ||
| 670 | + showIssue.value = true; | ||
| 671 | +}; | ||
| 672 | +// 提交作废,退回,问题件表单 | ||
| 673 | +const sunmitDeprecated = () => { | ||
| 674 | + let data = {}; | ||
| 675 | + if (typeId.value === 0) { | ||
| 676 | + data = { | ||
| 677 | + policystatus: "1", | ||
| 678 | + comment: deprecatedForm.value.deprecatedReason, | ||
| 679 | + }; | ||
| 680 | + } else { | ||
| 681 | + data = { | ||
| 682 | + associationapprove: deprecatedForm.value.associationapprove, | ||
| 683 | + comment: deprecatedForm.value.deprecatedReason, | ||
| 684 | + }; | ||
| 685 | + } | ||
| 686 | + const taskId = deprecatedForm.value.taskId; | ||
| 687 | + disposeUser(data, taskId).then((res) => { | ||
| 688 | + getList(); | ||
| 689 | + deprecatedShow.value = false; | ||
| 690 | + proxy.$modal.msgSuccess("操作成功"); | ||
| 691 | + }); | ||
| 692 | +}; | ||
| 693 | +// 分配承保公司 | ||
| 694 | +const handleAuthCompany = (associationapprove) => { | ||
| 695 | + companyForm.value = { | ||
| 696 | + associationapprove, | ||
| 697 | + taskId: taskId.value, | ||
| 698 | + }; | ||
| 699 | + companyShow.value = true; | ||
| 700 | +}; | ||
| 701 | + | ||
| 702 | +// 获取人员列表 | ||
| 703 | +const getUser = async () => { | ||
| 704 | + const { data } = await getUserList(); | ||
| 705 | + transferOptions.value = data; | ||
| 706 | +}; | ||
| 707 | +// 转办或分配 | ||
| 708 | +const handleSharing = (id) => { | ||
| 709 | + transferForm.value.taskId = id; | ||
| 710 | + getUser(); | ||
| 711 | + transferShow.value = true; | ||
| 712 | +}; | ||
| 713 | +/** 查询部门列表 */ | ||
| 714 | +const getDeptList = () => { | ||
| 715 | + loading.value = true; | ||
| 716 | + listDept(companyQueryParams).then((response) => { | ||
| 717 | + let newArr = []; | ||
| 718 | + newArr = response.data.filter((item) => item.parentId === 100); | ||
| 719 | + deptOptions.value = newArr.map((child) => { | ||
| 720 | + return { | ||
| 721 | + deptId: child.deptId.toString(), | ||
| 722 | + deptName: child.deptName, | ||
| 723 | + }; | ||
| 724 | + }); | ||
| 725 | + loading.value = false; | ||
| 726 | + }); | ||
| 727 | +}; | ||
| 728 | +/** 重置操作表单 */ | ||
| 729 | +function reset() { | ||
| 730 | + proxy.resetForm("policyRef"); | ||
| 731 | +} | ||
| 732 | + | ||
| 733 | +/** 修改按钮操作 */ | ||
| 734 | +const handleUpdate = async (row) => { | ||
| 735 | + reset(); | ||
| 736 | + const { data } = await getCarDetail(row.businessKey); | ||
| 737 | + getTransferTip(); | ||
| 738 | + form.value = data; | ||
| 739 | + open.value = true; | ||
| 740 | +}; | ||
| 741 | +/** 提交通过分配承保公司 */ | ||
| 742 | +function submitForm() { | ||
| 743 | + const data = { | ||
| 744 | + associationapprove: companyForm.value.associationapprove, | ||
| 745 | + associationapprovetype: "1", | ||
| 746 | + deptid: companyForm.value.deptId.toString(), | ||
| 747 | + }; | ||
| 748 | + const taskId = companyForm.value.taskId; | ||
| 749 | + disposeUser(data, taskId).then((res) => { | ||
| 750 | + companyShow.value = false; | ||
| 751 | + getList(); | ||
| 752 | + proxy.$modal.msgSuccess("保单已分配成功"); | ||
| 753 | + }); | ||
| 754 | +} | ||
| 755 | + | ||
| 756 | +/** 提交通过分配转办人员 */ | ||
| 757 | +function submitTransfer() { | ||
| 758 | + const data = { | ||
| 759 | + username: transferForm.value.username, | ||
| 760 | + }; | ||
| 761 | + const taskId = transferForm.value.taskId; | ||
| 762 | + transfer(data, taskId).then((res) => { | ||
| 763 | + transferShow.value = false; | ||
| 764 | + getList(); | ||
| 765 | + proxy.$modal.msgSuccess("保单已分配成功"); | ||
| 766 | + }); | ||
| 767 | +} | ||
| 768 | + | ||
| 769 | +// 提交承接回馈 | ||
| 770 | +const submit = () => { | ||
| 771 | + const data = { | ||
| 772 | + policystatus: "2", | ||
| 773 | + message: FeedbackForm.value.comment, | ||
| 774 | + commercialinsurancepolicynumber: | ||
| 775 | + FeedbackForm.value.commercialinsurancepolicynumber, | ||
| 776 | + stronginsurancepolicynumber: FeedbackForm.value.stronginsurancepolicynumber, | ||
| 777 | + }; | ||
| 778 | + disposeUser(data, FeedbackForm.value.taskId).then((res) => { | ||
| 779 | + getList(); | ||
| 780 | + proxy.$modal.msgSuccess("回馈成功"); | ||
| 781 | + showFeedback.value = false; | ||
| 782 | + }); | ||
| 783 | +}; | ||
| 784 | + | ||
| 785 | +const getMsg = (val) => { | ||
| 786 | + clearTimeout(timer.value); | ||
| 787 | + timer.value = setTimeout(() => { | ||
| 788 | + FeedbackForm.value.comment = val; | ||
| 789 | + }, 1000); | ||
| 790 | +}; | ||
| 791 | + | ||
| 792 | +// 获取流转下一家分配公司 | ||
| 793 | +const getTransferTip = async () => { | ||
| 794 | + loadingBtn.value = true; | ||
| 795 | + const { data } = await getCompanyTip(); | ||
| 796 | + transferTip.value = data.deptName; | ||
| 797 | + transferDeptId.value = data.deptId; | ||
| 798 | + loadingBtn.value = false; | ||
| 799 | +}; | ||
| 800 | + | ||
| 801 | +// 填写作废原因 | ||
| 802 | +const getReason = (val) => { | ||
| 803 | + clearTimeout(timerReason.value); | ||
| 804 | + timerReason.value = setTimeout(() => { | ||
| 805 | + deprecatedForm.value.deprecatedReason = val; | ||
| 806 | + }, 1000); | ||
| 807 | +}; | ||
| 808 | +// 提交修改 | ||
| 809 | +const submitUpdate = () => { | ||
| 810 | + updateCarInfo(form.value).then((response) => { | ||
| 811 | + proxy.$modal.msgSuccess("修改成功"); | ||
| 812 | + open.value = false; | ||
| 813 | + getList(); | ||
| 814 | + }); | ||
| 815 | +}; | ||
| 816 | + | ||
| 817 | +getList(); | ||
| 818 | +if (checkRole(["associationemployee"])) { | ||
| 819 | + getDeptList(); | ||
| 820 | +} | ||
| 821 | +</script> | ||
| 822 | + | ||
| 823 | +<style lang="scss" scoped> | ||
| 824 | +::v-deep(.el-radio-group) { | ||
| 825 | + align-items: start; | ||
| 826 | + flex-direction: column; | ||
| 827 | +} | ||
| 828 | +.header_top { | ||
| 829 | + display: flex; | ||
| 830 | + align-items: center; | ||
| 831 | + gap: 30px; | ||
| 832 | + margin-bottom: 20px; | ||
| 833 | +} | ||
| 834 | +.transferTip { | ||
| 835 | + display: flex; | ||
| 836 | + align-items: center; | ||
| 837 | + gap: 20px; | ||
| 838 | + font-size: 14px; | ||
| 839 | + color: #666; | ||
| 840 | +} | ||
| 841 | +.company_content { | ||
| 842 | + width: 100%; | ||
| 843 | + height: 200px; | ||
| 844 | + overflow-y: scroll; | ||
| 845 | +} | ||
| 846 | +</style> |
src/views/businessPolicy/processed/index.vue
0 → 100644
| 1 | +<template> | ||
| 2 | + <div class="app-container"> | ||
| 3 | + <!-- 筛选条件 --> | ||
| 4 | + <el-form | ||
| 5 | + :model="queryParams" | ||
| 6 | + ref="queryRef" | ||
| 7 | + v-show="showSearch" | ||
| 8 | + :inline="true" | ||
| 9 | + label-width="68px" | ||
| 10 | + > | ||
| 11 | + <el-form-item label="用户姓名" prop="name"> | ||
| 12 | + <el-input | ||
| 13 | + v-model="queryParams.name" | ||
| 14 | + placeholder="请输入名称" | ||
| 15 | + clearable | ||
| 16 | + style="width: 200px" | ||
| 17 | + @keyup.enter="handleQuery" | ||
| 18 | + /> | ||
| 19 | + </el-form-item> | ||
| 20 | + <el-form-item label="车牌号" prop="licensePlate"> | ||
| 21 | + <el-input | ||
| 22 | + v-model="queryParams.licensePlate" | ||
| 23 | + placeholder="请输入车牌号" | ||
| 24 | + clearable | ||
| 25 | + style="width: 200px" | ||
| 26 | + @keyup.enter="handleQuery" | ||
| 27 | + /> | ||
| 28 | + </el-form-item> | ||
| 29 | + <el-form-item label="操作人员" prop="association"> | ||
| 30 | + <el-input | ||
| 31 | + v-model="queryParams.association" | ||
| 32 | + placeholder="填写操作人员" | ||
| 33 | + clearable | ||
| 34 | + style="width: 200px" | ||
| 35 | + @keyup.enter="handleQuery" | ||
| 36 | + /> | ||
| 37 | + </el-form-item> | ||
| 38 | + <el-form-item label="分配机制" prop="associationapprovetype"> | ||
| 39 | + <el-select | ||
| 40 | + v-model="queryParams.associationapprovetype" | ||
| 41 | + placeholder="选择分配机制" | ||
| 42 | + clearable | ||
| 43 | + style="width: 200px" | ||
| 44 | + > | ||
| 45 | + <el-option | ||
| 46 | + v-for="dict in options" | ||
| 47 | + :key="dict.value" | ||
| 48 | + :label="dict.label" | ||
| 49 | + :value="dict.value" | ||
| 50 | + /> | ||
| 51 | + </el-select> | ||
| 52 | + </el-form-item> | ||
| 53 | + <el-form-item label="处理状态" prop="associationapprove"> | ||
| 54 | + <el-select | ||
| 55 | + v-model="queryParams.associationapprove" | ||
| 56 | + placeholder="选择处理状态" | ||
| 57 | + clearable | ||
| 58 | + style="width: 200px" | ||
| 59 | + > | ||
| 60 | + <el-option | ||
| 61 | + v-for="dict in associationapproveOptions" | ||
| 62 | + :key="dict.value" | ||
| 63 | + :label="dict.label" | ||
| 64 | + :value="dict.value" | ||
| 65 | + /> | ||
| 66 | + </el-select> | ||
| 67 | + </el-form-item> | ||
| 68 | + <el-form-item> | ||
| 69 | + <el-button | ||
| 70 | + type="primary" | ||
| 71 | + icon="Search" | ||
| 72 | + v-hasPermi="['system:registrationmonitor:listProcessed']" | ||
| 73 | + @click="handleQuery" | ||
| 74 | + >查询</el-button | ||
| 75 | + > | ||
| 76 | + <el-button icon="Refresh" @click="resetQuery">重置</el-button> | ||
| 77 | + </el-form-item> | ||
| 78 | + </el-form> | ||
| 79 | + | ||
| 80 | + <!-- 表格数据 --> | ||
| 81 | + <el-table v-loading="loading" :data="policyList" @row-click="handleUpdate"> | ||
| 82 | + <el-table-column label="序号" type="index" width="55" align="center" /> | ||
| 83 | + <el-table-column | ||
| 84 | + label="登记时间" | ||
| 85 | + prop="createTime" | ||
| 86 | + width="160" | ||
| 87 | + align="center" | ||
| 88 | + /> | ||
| 89 | + <el-table-column | ||
| 90 | + label="车牌号" | ||
| 91 | + prop="licensePlateNumber" | ||
| 92 | + width="150" | ||
| 93 | + align="center" | ||
| 94 | + /> | ||
| 95 | + <el-table-column | ||
| 96 | + label="车架号" | ||
| 97 | + prop="frameNumber" | ||
| 98 | + width="240" | ||
| 99 | + align="center" | ||
| 100 | + /> | ||
| 101 | + <el-table-column | ||
| 102 | + label="企业名称" | ||
| 103 | + prop="businessName" | ||
| 104 | + width="100" | ||
| 105 | + align="center" | ||
| 106 | + /> | ||
| 107 | + <el-table-column | ||
| 108 | + label="统一信用代码" | ||
| 109 | + prop="uniformCreditCode" | ||
| 110 | + width="180" | ||
| 111 | + align="center" | ||
| 112 | + /> | ||
| 113 | + <el-table-column | ||
| 114 | + label="联系电话" | ||
| 115 | + prop="businessPhone" | ||
| 116 | + width="150" | ||
| 117 | + align="center" | ||
| 118 | + /> | ||
| 119 | + <el-table-column | ||
| 120 | + label="处理状态" | ||
| 121 | + prop="policyStatus" | ||
| 122 | + show-overflow-tooltip | ||
| 123 | + width="150" | ||
| 124 | + /> | ||
| 125 | + <el-table-column | ||
| 126 | + label="上年承保公司" | ||
| 127 | + prop="sysDeptName" | ||
| 128 | + width="150" | ||
| 129 | + align="center" | ||
| 130 | + /> | ||
| 131 | + <el-table-column label="操作人员" width="150" align="center"> | ||
| 132 | + <template #default="{ row }"> | ||
| 133 | + <span>{{ | ||
| 134 | + row.associationEmployeeUserName || row.companyEmployeeUserName | ||
| 135 | + }}</span> | ||
| 136 | + </template> | ||
| 137 | + </el-table-column> | ||
| 138 | + <el-table-column label="操作时间" width="160"> | ||
| 139 | + <template #default="{ row }"> | ||
| 140 | + <span>{{ | ||
| 141 | + row.companyEmployeeUndertakeTime || row.distributionTime | ||
| 142 | + }}</span> | ||
| 143 | + </template> | ||
| 144 | + </el-table-column> | ||
| 145 | + <el-table-column | ||
| 146 | + label="分配机制" | ||
| 147 | + width="120" | ||
| 148 | + prop="distributionMechanism" | ||
| 149 | + align="center" | ||
| 150 | + /> | ||
| 151 | + <el-table-column | ||
| 152 | + label="承保公司" | ||
| 153 | + prop="companyName" | ||
| 154 | + show-overflow-tooltip | ||
| 155 | + width="150" | ||
| 156 | + align="center" | ||
| 157 | + > | ||
| 158 | + <template #default="{ row }"> | ||
| 159 | + <span>{{ row.companyName || "无" }}</span> | ||
| 160 | + </template> | ||
| 161 | + </el-table-column> | ||
| 162 | + </el-table> | ||
| 163 | + | ||
| 164 | + <pagination | ||
| 165 | + v-show="total > 0" | ||
| 166 | + :total="total" | ||
| 167 | + v-model:page="queryParams.pageNum" | ||
| 168 | + v-model:limit="queryParams.pageSize" | ||
| 169 | + @pagination="getList" | ||
| 170 | + /> | ||
| 171 | + | ||
| 172 | + <!-- 查阅对话框 --> | ||
| 173 | + <el-dialog v-model="open" title="保单信息" width="700" append-to-body> | ||
| 174 | + <el-form :model="form" ref="policyRef" label-width="100px"> | ||
| 175 | + <el-row> | ||
| 176 | + <el-col :span="12"> | ||
| 177 | + <el-form-item label="车牌号" prop="licensePlateNumber"> | ||
| 178 | + <el-input | ||
| 179 | + v-model="form.licensePlateNumber" | ||
| 180 | + placeholder="请输入车牌号" | ||
| 181 | + disabled | ||
| 182 | + /> | ||
| 183 | + </el-form-item> | ||
| 184 | + </el-col> | ||
| 185 | + <el-col :span="12"> | ||
| 186 | + <el-form-item label="车架号" prop="frameNumber"> | ||
| 187 | + <el-input | ||
| 188 | + v-model="form.frameNumber" | ||
| 189 | + disabled | ||
| 190 | + placeholder="请输入车架号" | ||
| 191 | + /> | ||
| 192 | + </el-form-item> | ||
| 193 | + </el-col> | ||
| 194 | + </el-row> | ||
| 195 | + <el-row> | ||
| 196 | + <el-col :span="12"> | ||
| 197 | + <el-form-item label="企业名称" prop="businessName"> | ||
| 198 | + <el-input | ||
| 199 | + v-model="form.businessName" | ||
| 200 | + :disabled="!hasRole" | ||
| 201 | + placeholder="请输入企业名称" | ||
| 202 | + /> | ||
| 203 | + </el-form-item> | ||
| 204 | + </el-col> | ||
| 205 | + <el-col :span="12"> | ||
| 206 | + <el-form-item label="联系电话" prop="businessPhone"> | ||
| 207 | + <el-input | ||
| 208 | + v-model="form.businessPhone" | ||
| 209 | + :disabled="!hasRole" | ||
| 210 | + placeholder="请输入联系电话" | ||
| 211 | + /> | ||
| 212 | + </el-form-item> | ||
| 213 | + </el-col> | ||
| 214 | + </el-row> | ||
| 215 | + <el-row> | ||
| 216 | + <el-col :span="12"> | ||
| 217 | + <el-form-item label="发动机号" prop="engineNumber"> | ||
| 218 | + <el-input v-model="form.engineNumber" placeholder="无" disabled /> | ||
| 219 | + </el-form-item> | ||
| 220 | + </el-col> | ||
| 221 | + <el-col :span="12"> | ||
| 222 | + <el-form-item label="上年承保公司" prop="sysDeptName"> | ||
| 223 | + <el-input | ||
| 224 | + v-model="form.sysDeptName" | ||
| 225 | + disabled | ||
| 226 | + placeholder="请输入上年承保公司" | ||
| 227 | + /> | ||
| 228 | + </el-form-item> | ||
| 229 | + </el-col> | ||
| 230 | + </el-row> | ||
| 231 | + <el-row> | ||
| 232 | + <el-col :span="12"> | ||
| 233 | + <el-form-item label="分配机制" prop="distributionMechanism"> | ||
| 234 | + <el-input | ||
| 235 | + v-model="form.distributionMechanism" | ||
| 236 | + disabled | ||
| 237 | + placeholder="无" | ||
| 238 | + /> | ||
| 239 | + </el-form-item> | ||
| 240 | + </el-col> | ||
| 241 | + <el-col :span="12"> | ||
| 242 | + <el-form-item label="信用代码" prop="uniformCreditCode"> | ||
| 243 | + <el-input | ||
| 244 | + v-model="form.uniformCreditCode" | ||
| 245 | + :disabled="!hasRole" | ||
| 246 | + placeholder="请输入信用代码" | ||
| 247 | + /> | ||
| 248 | + </el-form-item> | ||
| 249 | + </el-col> | ||
| 250 | + </el-row> | ||
| 251 | + <el-row> | ||
| 252 | + <el-col :span="12"> | ||
| 253 | + <el-form-item label="保险需求" prop="requirements"> | ||
| 254 | + <el-input v-model="form.requirements" disabled placeholder="无" /> | ||
| 255 | + </el-form-item> | ||
| 256 | + </el-col> | ||
| 257 | + <el-col :span="12"> | ||
| 258 | + <el-form-item label="使用性质" prop="vehicleNature"> | ||
| 259 | + <el-input | ||
| 260 | + v-model="form.vehicleNature" | ||
| 261 | + disabled | ||
| 262 | + placeholder="无" | ||
| 263 | + /> | ||
| 264 | + </el-form-item> | ||
| 265 | + </el-col> | ||
| 266 | + </el-row> | ||
| 267 | + </el-form> | ||
| 268 | + </el-dialog> | ||
| 269 | + </div> | ||
| 270 | +</template> | ||
| 271 | + | ||
| 272 | +<script setup> | ||
| 273 | +import { queryProcessedList } from "@/api/policy/index"; | ||
| 274 | +const { proxy } = getCurrentInstance(); | ||
| 275 | +const loading = ref(false); | ||
| 276 | +const total = ref(0); | ||
| 277 | +const open = ref(false); | ||
| 278 | +const form = ref({}); | ||
| 279 | +const showSearch = ref(true); | ||
| 280 | +const queryParams = reactive({ | ||
| 281 | + pageNum: 1, | ||
| 282 | + pageSize: 10, | ||
| 283 | + name: "", | ||
| 284 | + type: 1, | ||
| 285 | + licensePlate: "", | ||
| 286 | + association: "", | ||
| 287 | + associationapprovetype: "", | ||
| 288 | + associationapprove: "", | ||
| 289 | +}); | ||
| 290 | + | ||
| 291 | +const options = [ | ||
| 292 | + { | ||
| 293 | + value: 0, | ||
| 294 | + label: "系统分配", | ||
| 295 | + }, | ||
| 296 | + { | ||
| 297 | + value: 1, | ||
| 298 | + label: "人工分配", | ||
| 299 | + }, | ||
| 300 | +]; | ||
| 301 | + | ||
| 302 | +const associationapproveOptions = [ | ||
| 303 | + { | ||
| 304 | + value: 0, | ||
| 305 | + label: "通过", | ||
| 306 | + }, | ||
| 307 | + { | ||
| 308 | + value: 1, | ||
| 309 | + label: "退回", | ||
| 310 | + }, | ||
| 311 | +]; | ||
| 312 | + | ||
| 313 | +const policyList = ref([]); | ||
| 314 | + | ||
| 315 | +const getList = async () => { | ||
| 316 | + loading.value = true; | ||
| 317 | + const res = await queryProcessedList(queryParams); | ||
| 318 | + policyList.value = res.rows; | ||
| 319 | + total.value = res.total; | ||
| 320 | + loading.value = false; | ||
| 321 | +}; | ||
| 322 | + | ||
| 323 | +/** 重置操作表单 */ | ||
| 324 | +function reset() { | ||
| 325 | + proxy.resetForm("policyRef"); | ||
| 326 | +} | ||
| 327 | + | ||
| 328 | +/** 修改按钮操作 */ | ||
| 329 | +function handleUpdate(row) { | ||
| 330 | + reset(); | ||
| 331 | + form.value = row; | ||
| 332 | + open.value = true; | ||
| 333 | +} | ||
| 334 | + | ||
| 335 | +/** 搜索按钮操作 */ | ||
| 336 | +function handleQuery() { | ||
| 337 | + queryParams.pageNum = 1; | ||
| 338 | + getList(); | ||
| 339 | +} | ||
| 340 | +/** 重置按钮操作 */ | ||
| 341 | +function resetQuery() { | ||
| 342 | + proxy.resetForm("queryRef"); | ||
| 343 | + handleQuery(); | ||
| 344 | +} | ||
| 345 | + | ||
| 346 | +getList(); | ||
| 347 | +</script> | ||
| 348 | + | ||
| 349 | +<style></style> |
| 1 | <template> | 1 | <template> |
| 2 | <div class="app-container"> | 2 | <div class="app-container"> |
| 3 | <div class="tip"> | 3 | <div class="tip"> |
| 4 | - 提示:订单分配不以保险公司顺序进行分配,系统随机分配;重新添加或修改订单后,系统重新开始计算;分配颜度满了以后,系统重新计算 | 4 | + <p> |
| 5 | + 提示:订单分配不以保险公司顺序进行分配,系统随机分配;重新添加或修改订单后,系统重新开始计算;分配颜度满了以后,系统重新计算 | ||
| 6 | + </p> | ||
| 7 | + <p style="display: flex; align-items: center; gap: 20px"> | ||
| 8 | + <span>轮次:{{ countData.rounds }}</span> | ||
| 9 | + <span>笔数:{{ countData.strokesNum }}</span> | ||
| 10 | + <span>每轮总数:{{ countData.countRounds }}</span> | ||
| 11 | + <span>实际总笔数:{{ countData.actualStrokesNum }}</span> | ||
| 12 | + </p> | ||
| 5 | </div> | 13 | </div> |
| 6 | 14 | ||
| 7 | <el-row :gutter="10" class="mb8"> | 15 | <el-row :gutter="10" class="mb8"> |
| @@ -112,12 +120,14 @@ import { | @@ -112,12 +120,14 @@ import { | ||
| 112 | queryRules, | 120 | queryRules, |
| 113 | delRules, | 121 | delRules, |
| 114 | } from "@/api/configurationCenter/rules.js"; | 122 | } from "@/api/configurationCenter/rules.js"; |
| 123 | +import { getCount } from "@/api/policy/index"; | ||
| 115 | import { listDept } from "@/api/system/dept"; | 124 | import { listDept } from "@/api/system/dept"; |
| 116 | const { proxy } = getCurrentInstance(); | 125 | const { proxy } = getCurrentInstance(); |
| 117 | const loading = ref(false); | 126 | const loading = ref(false); |
| 118 | const multiple = ref(true); | 127 | const multiple = ref(true); |
| 119 | const ids = ref([]); | 128 | const ids = ref([]); |
| 120 | const total = ref(0); | 129 | const total = ref(0); |
| 130 | +const countData = ref({}); | ||
| 121 | const deptOptions = ref([]); | 131 | const deptOptions = ref([]); |
| 122 | const title = ref("添加分配规则"); | 132 | const title = ref("添加分配规则"); |
| 123 | const open = ref(false); | 133 | const open = ref(false); |
| @@ -136,6 +146,7 @@ const rulesList = ref([]); | @@ -136,6 +146,7 @@ const rulesList = ref([]); | ||
| 136 | onMounted(() => { | 146 | onMounted(() => { |
| 137 | getList(); | 147 | getList(); |
| 138 | getDeptList(); | 148 | getDeptList(); |
| 149 | + getNumber(); | ||
| 139 | }); | 150 | }); |
| 140 | 151 | ||
| 141 | // 获取规则列表 | 152 | // 获取规则列表 |
| @@ -179,6 +190,12 @@ function handleDelete(row) { | @@ -179,6 +190,12 @@ function handleDelete(row) { | ||
| 179 | }); | 190 | }); |
| 180 | } | 191 | } |
| 181 | 192 | ||
| 193 | +// 获取轮次轮数 | ||
| 194 | +const getNumber = async () => { | ||
| 195 | + const { data } = await getCount(); | ||
| 196 | + countData.value = data[0]; | ||
| 197 | +}; | ||
| 198 | + | ||
| 182 | /** 重置操作表单 */ | 199 | /** 重置操作表单 */ |
| 183 | function reset() { | 200 | function reset() { |
| 184 | form.value = { | 201 | form.value = { |
| @@ -198,6 +198,7 @@ const queryParams = reactive({ | @@ -198,6 +198,7 @@ const queryParams = reactive({ | ||
| 198 | pageNum: 1, | 198 | pageNum: 1, |
| 199 | pageSize: 10, | 199 | pageSize: 10, |
| 200 | name: "", | 200 | name: "", |
| 201 | + type: 0, | ||
| 201 | licensePlate: "", | 202 | licensePlate: "", |
| 202 | association: "", | 203 | association: "", |
| 203 | }); | 204 | }); |
| @@ -259,6 +259,7 @@ const queryParams = reactive({ | @@ -259,6 +259,7 @@ const queryParams = reactive({ | ||
| 259 | pageNum: 1, | 259 | pageNum: 1, |
| 260 | pageSize: 10, | 260 | pageSize: 10, |
| 261 | name: "", | 261 | name: "", |
| 262 | + type: 0, | ||
| 262 | licensePlate: "", | 263 | licensePlate: "", |
| 263 | association: "", | 264 | association: "", |
| 264 | associationapprovetype: "", | 265 | associationapprovetype: "", |
| @@ -176,6 +176,7 @@ const companyShow = ref(false); | @@ -176,6 +176,7 @@ const companyShow = ref(false); | ||
| 176 | const queryParams = reactive({ | 176 | const queryParams = reactive({ |
| 177 | pageNum: 1, | 177 | pageNum: 1, |
| 178 | pageSize: 10, | 178 | pageSize: 10, |
| 179 | + type: 0, | ||
| 179 | }); | 180 | }); |
| 180 | const policyList = ref([]); | 181 | const policyList = ref([]); |
| 181 | 182 |
| @@ -327,6 +327,7 @@ const queryParams = reactive({ | @@ -327,6 +327,7 @@ const queryParams = reactive({ | ||
| 327 | associationapprovetype: "", | 327 | associationapprovetype: "", |
| 328 | orderprogress: "", | 328 | orderprogress: "", |
| 329 | policystatus: "", | 329 | policystatus: "", |
| 330 | + type: 0, | ||
| 330 | }); | 331 | }); |
| 331 | 332 | ||
| 332 | const progressOption = ref([ | 333 | const progressOption = ref([ |
| @@ -507,6 +507,7 @@ const companyForm = ref({}); | @@ -507,6 +507,7 @@ const companyForm = ref({}); | ||
| 507 | const queryParams = reactive({ | 507 | const queryParams = reactive({ |
| 508 | pageNum: 1, | 508 | pageNum: 1, |
| 509 | pageSize: 10, | 509 | pageSize: 10, |
| 510 | + type: 0, | ||
| 510 | }); | 511 | }); |
| 511 | const companyQueryParams = reactive({ | 512 | const companyQueryParams = reactive({ |
| 512 | deptName: undefined, | 513 | deptName: undefined, |
| @@ -239,6 +239,7 @@ const queryParams = reactive({ | @@ -239,6 +239,7 @@ const queryParams = reactive({ | ||
| 239 | pageNum: 1, | 239 | pageNum: 1, |
| 240 | pageSize: 10, | 240 | pageSize: 10, |
| 241 | name: "", | 241 | name: "", |
| 242 | + type: 0, | ||
| 242 | licensePlate: "", | 243 | licensePlate: "", |
| 243 | association: "", | 244 | association: "", |
| 244 | associationapprovetype: "", | 245 | associationapprovetype: "", |
| 1 | +<template> | ||
| 2 | + <div class="app-container"> | ||
| 3 | + <!-- 筛选条件 --> | ||
| 4 | + <el-form | ||
| 5 | + :model="queryParams" | ||
| 6 | + ref="queryRef" | ||
| 7 | + v-show="showSearch" | ||
| 8 | + :inline="true" | ||
| 9 | + label-width="68px" | ||
| 10 | + > | ||
| 11 | + <el-form-item label="分配机制" prop="associationapprovetype"> | ||
| 12 | + <el-select | ||
| 13 | + v-model="queryParams.associationapprovetype" | ||
| 14 | + placeholder="系统分配" | ||
| 15 | + clearable | ||
| 16 | + style="width: 220px" | ||
| 17 | + > | ||
| 18 | + <el-option | ||
| 19 | + v-for="dict in options" | ||
| 20 | + :key="dict.value" | ||
| 21 | + :label="dict.label" | ||
| 22 | + :value="dict.value" | ||
| 23 | + /> | ||
| 24 | + </el-select> | ||
| 25 | + </el-form-item> | ||
| 26 | + <el-form-item label="操作人员" prop="association"> | ||
| 27 | + <el-input | ||
| 28 | + v-model="queryParams.association" | ||
| 29 | + placeholder="填写操作人员" | ||
| 30 | + clearable | ||
| 31 | + style="width: 220px" | ||
| 32 | + @keyup.enter="handleQuery" | ||
| 33 | + /> | ||
| 34 | + </el-form-item> | ||
| 35 | + <el-form-item label="承保公司" prop="company"> | ||
| 36 | + <el-input | ||
| 37 | + v-model="queryParams.company" | ||
| 38 | + placeholder="请输入承保公司" | ||
| 39 | + clearable | ||
| 40 | + style="width: 220px" | ||
| 41 | + @keyup.enter="handleQuery" | ||
| 42 | + /> | ||
| 43 | + </el-form-item> | ||
| 44 | + <el-form-item label="承接人" prop="companyEmployeeUserName"> | ||
| 45 | + <el-input | ||
| 46 | + v-model="queryParams.companyEmployeeUserName" | ||
| 47 | + placeholder="请输入承接人" | ||
| 48 | + clearable | ||
| 49 | + style="width: 220px" | ||
| 50 | + @keyup.enter="handleQuery" | ||
| 51 | + /> | ||
| 52 | + </el-form-item> | ||
| 53 | + <el-form-item label="保单状态" prop="policystatus"> | ||
| 54 | + <el-select | ||
| 55 | + v-model="queryParams.policystatus" | ||
| 56 | + placeholder="选择进度" | ||
| 57 | + clearable | ||
| 58 | + style="width: 220px" | ||
| 59 | + > | ||
| 60 | + <el-option | ||
| 61 | + v-for="dict in statusOption" | ||
| 62 | + :key="dict.value" | ||
| 63 | + :label="dict.label" | ||
| 64 | + :value="dict.value" | ||
| 65 | + /> | ||
| 66 | + </el-select> | ||
| 67 | + </el-form-item> | ||
| 68 | + <el-form-item label="保单进度" prop="orderprogress"> | ||
| 69 | + <el-select | ||
| 70 | + v-model="queryParams.orderprogress" | ||
| 71 | + placeholder="选择进度" | ||
| 72 | + clearable | ||
| 73 | + style="width: 220px" | ||
| 74 | + > | ||
| 75 | + <el-option | ||
| 76 | + v-for="dict in progressOption" | ||
| 77 | + :key="dict.value" | ||
| 78 | + :label="dict.label" | ||
| 79 | + :value="dict.value" | ||
| 80 | + /> | ||
| 81 | + </el-select> | ||
| 82 | + </el-form-item> | ||
| 83 | + <el-form-item label="车主" prop="name"> | ||
| 84 | + <el-input | ||
| 85 | + v-model="queryParams.name" | ||
| 86 | + placeholder="请输入车主" | ||
| 87 | + clearable | ||
| 88 | + style="width: 220px" | ||
| 89 | + @keyup.enter="handleQuery" | ||
| 90 | + /> | ||
| 91 | + </el-form-item> | ||
| 92 | + <el-form-item label="车牌号" prop="licensePlate"> | ||
| 93 | + <el-input | ||
| 94 | + v-model="queryParams.licensePlate" | ||
| 95 | + placeholder="请输入车牌号" | ||
| 96 | + clearable | ||
| 97 | + style="width: 220px" | ||
| 98 | + @keyup.enter="handleQuery" | ||
| 99 | + /> | ||
| 100 | + </el-form-item> | ||
| 101 | + <el-form-item label="时间范围" prop="timeFrame"> | ||
| 102 | + <el-date-picker | ||
| 103 | + v-model="timeFrame" | ||
| 104 | + type="datetimerange" | ||
| 105 | + range-separator="To" | ||
| 106 | + start-placeholder="开始时间" | ||
| 107 | + end-placeholder="结束时间" | ||
| 108 | + @change="handleTime" | ||
| 109 | + /> | ||
| 110 | + </el-form-item> | ||
| 111 | + <el-form-item> | ||
| 112 | + <el-button type="primary" icon="Search" @click="handleQuery" | ||
| 113 | + >查询</el-button | ||
| 114 | + > | ||
| 115 | + <el-button icon="Refresh" @click="resetQuery">重置</el-button> | ||
| 116 | + </el-form-item> | ||
| 117 | + </el-form> | ||
| 118 | + | ||
| 119 | + <el-row :gutter="10" class="mb8"> | ||
| 120 | + <el-col :span="1.5"> | ||
| 121 | + <el-button | ||
| 122 | + type="warning" | ||
| 123 | + plain | ||
| 124 | + icon="Download" | ||
| 125 | + @click="handleExport" | ||
| 126 | + v-hasPermi="['system:registrationmonitor:export']" | ||
| 127 | + >导出</el-button | ||
| 128 | + > | ||
| 129 | + </el-col> | ||
| 130 | + </el-row> | ||
| 131 | + | ||
| 132 | + <!-- 表格数据 --> | ||
| 133 | + <el-table v-loading="loading" :data="policyList"> | ||
| 134 | + <el-table-column label="序号" width="55" type="index" /> | ||
| 135 | + <el-table-column | ||
| 136 | + label="登记时间" | ||
| 137 | + prop="createTime" | ||
| 138 | + width="160" | ||
| 139 | + align="center" | ||
| 140 | + /> | ||
| 141 | + <el-table-column | ||
| 142 | + label="车牌号" | ||
| 143 | + prop="licensePlateNumber" | ||
| 144 | + width="150" | ||
| 145 | + align="center" | ||
| 146 | + /> | ||
| 147 | + <el-table-column | ||
| 148 | + label="车架号" | ||
| 149 | + prop="frameNumber" | ||
| 150 | + width="240" | ||
| 151 | + align="center" | ||
| 152 | + /> | ||
| 153 | + <el-table-column | ||
| 154 | + label="发动机号" | ||
| 155 | + width="180" | ||
| 156 | + prop="engineNumber" | ||
| 157 | + align="center" | ||
| 158 | + :show-overflow-tooltip="true" | ||
| 159 | + /> | ||
| 160 | + <el-table-column label="是否新能源" width="150" align="center"> | ||
| 161 | + <template #default="{ row }"> | ||
| 162 | + {{ row.isNewEnergy === "1" ? "是" : "否" }} | ||
| 163 | + </template> | ||
| 164 | + </el-table-column> | ||
| 165 | + <el-table-column | ||
| 166 | + label="企业名称" | ||
| 167 | + prop="businessName" | ||
| 168 | + width="100" | ||
| 169 | + align="center" | ||
| 170 | + /> | ||
| 171 | + <el-table-column | ||
| 172 | + label="统一信用代码" | ||
| 173 | + prop="uniformCreditCode" | ||
| 174 | + width="180" | ||
| 175 | + align="center" | ||
| 176 | + /> | ||
| 177 | + <el-table-column | ||
| 178 | + label="联系电话" | ||
| 179 | + prop="businessPhone" | ||
| 180 | + width="150" | ||
| 181 | + align="center" | ||
| 182 | + /> | ||
| 183 | + <el-table-column | ||
| 184 | + align="center" | ||
| 185 | + label="分配机制" | ||
| 186 | + width="120" | ||
| 187 | + prop="distributionMechanism" | ||
| 188 | + /> | ||
| 189 | + <el-table-column | ||
| 190 | + align="center" | ||
| 191 | + label="操作人" | ||
| 192 | + width="120" | ||
| 193 | + prop="distributionMechanism" | ||
| 194 | + > | ||
| 195 | + <template #default="{ row }"> | ||
| 196 | + <span>{{ | ||
| 197 | + row.companyEmployeeUserName || row.associationEmployeeUserName | ||
| 198 | + }}</span> | ||
| 199 | + </template> | ||
| 200 | + </el-table-column> | ||
| 201 | + <el-table-column | ||
| 202 | + align="center" | ||
| 203 | + label="操作时间" | ||
| 204 | + width="160" | ||
| 205 | + prop="distributionTime" | ||
| 206 | + /> | ||
| 207 | + <el-table-column | ||
| 208 | + label="承保公司" | ||
| 209 | + prop="companyName" | ||
| 210 | + width="150" | ||
| 211 | + align="center" | ||
| 212 | + /> | ||
| 213 | + <el-table-column label="保单进度" width="100" prop="orderProgress" /> | ||
| 214 | + <el-table-column | ||
| 215 | + label="保单状态" | ||
| 216 | + width="100" | ||
| 217 | + prop="policyStatus" | ||
| 218 | + :show-overflow-tooltip="true" | ||
| 219 | + /> | ||
| 220 | + <el-table-column label="时效" width="100"> | ||
| 221 | + <template #default="{ row }"> | ||
| 222 | + <span>{{ | ||
| 223 | + row.policyStatus === "已作废" || | ||
| 224 | + row.policyStatus === "退回后用户取消登记" | ||
| 225 | + ? "无" | ||
| 226 | + : timeDifference(row) | ||
| 227 | + }}</span> | ||
| 228 | + </template> | ||
| 229 | + </el-table-column> | ||
| 230 | + <el-table-column | ||
| 231 | + label="查询回馈" | ||
| 232 | + fixed="right" | ||
| 233 | + width="100" | ||
| 234 | + prop="Feedback" | ||
| 235 | + > | ||
| 236 | + <template #default="{ row }"> | ||
| 237 | + <el-button | ||
| 238 | + v-show=" | ||
| 239 | + row.policyStatus === '已作废' || row.policyStatus === '已办结' | ||
| 240 | + " | ||
| 241 | + type="primary" | ||
| 242 | + @click="queryRemark(row)" | ||
| 243 | + >查阅</el-button | ||
| 244 | + > | ||
| 245 | + </template> | ||
| 246 | + </el-table-column> | ||
| 247 | + </el-table> | ||
| 248 | + | ||
| 249 | + <pagination | ||
| 250 | + v-show="total > 0" | ||
| 251 | + :total="total" | ||
| 252 | + v-model:page="queryParams.pageNum" | ||
| 253 | + v-model:limit="queryParams.pageSize" | ||
| 254 | + @pagination="getList" | ||
| 255 | + /> | ||
| 256 | + | ||
| 257 | + <!-- 查阅信息弹出框 --> | ||
| 258 | + <el-dialog v-model="open" title="保单信息" width="700" append-to-body> | ||
| 259 | + <el-form :model="form" ref="policyRef" label-width="100px"> | ||
| 260 | + <el-row> | ||
| 261 | + <el-col :span="12"> | ||
| 262 | + <el-form-item label="车牌号" prop="licensePlateNumber"> | ||
| 263 | + <el-input | ||
| 264 | + v-model="form.licensePlateNumber" | ||
| 265 | + placeholder="请输入车牌号" | ||
| 266 | + disabled | ||
| 267 | + /> | ||
| 268 | + </el-form-item> | ||
| 269 | + </el-col> | ||
| 270 | + <el-col :span="12"> | ||
| 271 | + <el-form-item label="车架号" prop="frameNumber"> | ||
| 272 | + <el-input | ||
| 273 | + v-model="form.frameNumber" | ||
| 274 | + disabled | ||
| 275 | + placeholder="请输入车架号" | ||
| 276 | + /> | ||
| 277 | + </el-form-item> | ||
| 278 | + </el-col> | ||
| 279 | + </el-row> | ||
| 280 | + <el-row> | ||
| 281 | + <el-col :span="12"> | ||
| 282 | + <el-form-item label="企业名称" prop="businessName"> | ||
| 283 | + <el-input | ||
| 284 | + v-model="form.businessName" | ||
| 285 | + :disabled="!hasRole" | ||
| 286 | + placeholder="请输入企业名称" | ||
| 287 | + /> | ||
| 288 | + </el-form-item> | ||
| 289 | + </el-col> | ||
| 290 | + <el-col :span="12"> | ||
| 291 | + <el-form-item label="联系电话" prop="businessPhone"> | ||
| 292 | + <el-input | ||
| 293 | + v-model="form.businessPhone" | ||
| 294 | + :disabled="!hasRole" | ||
| 295 | + placeholder="请输入联系电话" | ||
| 296 | + /> | ||
| 297 | + </el-form-item> | ||
| 298 | + </el-col> | ||
| 299 | + </el-row> | ||
| 300 | + <el-row> | ||
| 301 | + <el-col :span="12"> | ||
| 302 | + <el-form-item label="车辆使用性质" prop="vehicleNature"> | ||
| 303 | + <el-select | ||
| 304 | + v-model="form.vehicleNatureId" | ||
| 305 | + disabled | ||
| 306 | + style="width: 230px" | ||
| 307 | + > | ||
| 308 | + <el-option | ||
| 309 | + v-for="item in carNatureOption" | ||
| 310 | + :key="item.id" | ||
| 311 | + :label="item.name" | ||
| 312 | + :value="item.id" | ||
| 313 | + /> | ||
| 314 | + </el-select> | ||
| 315 | + </el-form-item> | ||
| 316 | + </el-col> | ||
| 317 | + <el-col :span="12"> | ||
| 318 | + <el-form-item label="保险需求" prop="requirements"> | ||
| 319 | + <el-select | ||
| 320 | + v-model="form.requirementsId" | ||
| 321 | + disabled | ||
| 322 | + style="width: 230px" | ||
| 323 | + > | ||
| 324 | + <el-option | ||
| 325 | + v-for="item in needOption" | ||
| 326 | + :key="item.id" | ||
| 327 | + :label="item.name" | ||
| 328 | + :value="item.id" | ||
| 329 | + /> | ||
| 330 | + </el-select> | ||
| 331 | + </el-form-item> | ||
| 332 | + </el-col> | ||
| 333 | + </el-row> | ||
| 334 | + <el-row | ||
| 335 | + v-if=" | ||
| 336 | + form.commercialInsurancePolicyNumber || | ||
| 337 | + form.strongInsurancePolicyNumber | ||
| 338 | + " | ||
| 339 | + > | ||
| 340 | + <el-col :span="12"> | ||
| 341 | + <el-form-item | ||
| 342 | + label="商险单号" | ||
| 343 | + prop="commercialInsurancePolicyNumber" | ||
| 344 | + > | ||
| 345 | + <el-input | ||
| 346 | + v-model="form.commercialInsurancePolicyNumber" | ||
| 347 | + disabled | ||
| 348 | + placeholder="请输入承保单号" | ||
| 349 | + /> | ||
| 350 | + </el-form-item> | ||
| 351 | + </el-col> | ||
| 352 | + <el-col :span="12"> | ||
| 353 | + <el-form-item label="强险单号" prop="strongInsurancePolicyNumber"> | ||
| 354 | + <el-input | ||
| 355 | + v-model="form.strongInsurancePolicyNumber" | ||
| 356 | + disabled | ||
| 357 | + placeholder="请输入承保单号" | ||
| 358 | + /> | ||
| 359 | + </el-form-item> | ||
| 360 | + </el-col> | ||
| 361 | + </el-row> | ||
| 362 | + <el-form-item :label="labelTitle" prop="progress"> | ||
| 363 | + <QuillEditor :value="form.comment" @updateValue="getMsg" /> | ||
| 364 | + </el-form-item> | ||
| 365 | + </el-form> | ||
| 366 | + <template #footer> | ||
| 367 | + <div class="dialog-footer"> | ||
| 368 | + <el-button @click="open = false">取消</el-button> | ||
| 369 | + <el-button | ||
| 370 | + type="primary" | ||
| 371 | + v-hasPermi="['policy:info:edit']" | ||
| 372 | + @click="open = false" | ||
| 373 | + >确认</el-button | ||
| 374 | + > | ||
| 375 | + </div> | ||
| 376 | + </template> | ||
| 377 | + </el-dialog> | ||
| 378 | + </div> | ||
| 379 | +</template> | ||
| 380 | + | ||
| 381 | +<script setup> | ||
| 382 | +import { | ||
| 383 | + queryList, | ||
| 384 | + queryResult, | ||
| 385 | + queryDefeatContent, | ||
| 386 | + getCarDetail, | ||
| 387 | +} from "@/api/policy"; | ||
| 388 | +import { queryCarNature } from "@/api/configurationCenter/carNature.js"; | ||
| 389 | +import { queryNeed } from "@/api/configurationCenter/need.js"; | ||
| 390 | +import { computed, reactive } from "vue"; | ||
| 391 | +import { intervalTime } from "@/utils/intervalTime"; | ||
| 392 | +const { proxy } = getCurrentInstance(); | ||
| 393 | +const loading = ref(false); | ||
| 394 | +const total = ref(0); | ||
| 395 | +const open = ref(false); | ||
| 396 | +const isCustom = ref(false); | ||
| 397 | +const labelTitle = ref("保单回馈"); | ||
| 398 | +// 表单 | ||
| 399 | +const form = ref({ | ||
| 400 | + name: "", | ||
| 401 | + identificationNumber: "", | ||
| 402 | + sysDeptId: "", | ||
| 403 | + customizeVehicleBrand: "", | ||
| 404 | + customizeVehicleModel: "", | ||
| 405 | + licensePlateNumber: "", | ||
| 406 | + lincensePlateTypeId: "", | ||
| 407 | + isCustomizeBrandAndModel: "1", | ||
| 408 | + frameNumber: "", | ||
| 409 | + engineNumber: "", | ||
| 410 | + vehicleTypeId: "", | ||
| 411 | + vehicleNatureId: "", | ||
| 412 | + passengersNumber: "", | ||
| 413 | + passengerCapacity: "", | ||
| 414 | + emissions: "", | ||
| 415 | + vehicleModelId: "", | ||
| 416 | + vehicleBrandId: "", | ||
| 417 | + tractionMass: "", | ||
| 418 | + requirementsId: "", | ||
| 419 | +}); | ||
| 420 | +const showSearch = ref(true); | ||
| 421 | +// 请求选项参数 | ||
| 422 | +const getParams = reactive({ | ||
| 423 | + pageNum: 1, | ||
| 424 | + pageSize: 100, | ||
| 425 | +}); | ||
| 426 | +// 查询参数 | ||
| 427 | +const queryParams = reactive({ | ||
| 428 | + pageNum: 1, | ||
| 429 | + pageSize: 10, | ||
| 430 | + name: "", | ||
| 431 | + licensePlate: "", | ||
| 432 | + association: "", | ||
| 433 | + company: "", | ||
| 434 | + type: 1, | ||
| 435 | + associationapprovetype: "", | ||
| 436 | + companyEmployeeUserName: "", | ||
| 437 | + orderprogress: "", | ||
| 438 | + policystatus: "", | ||
| 439 | + startTime: "", | ||
| 440 | + endTime: "", | ||
| 441 | +}); | ||
| 442 | +const timeFrame = ref(null); | ||
| 443 | +const statusOption = ref([ | ||
| 444 | + { | ||
| 445 | + value: 0, | ||
| 446 | + label: "进行中", | ||
| 447 | + }, | ||
| 448 | + { | ||
| 449 | + value: 1, | ||
| 450 | + label: "疑难件", | ||
| 451 | + }, | ||
| 452 | + { | ||
| 453 | + value: 2, | ||
| 454 | + label: "已办结", | ||
| 455 | + }, | ||
| 456 | + { | ||
| 457 | + value: 6, | ||
| 458 | + label: "协会退回", | ||
| 459 | + }, | ||
| 460 | + { | ||
| 461 | + value: 7, | ||
| 462 | + label: "放弃登记", | ||
| 463 | + }, | ||
| 464 | +]); | ||
| 465 | + | ||
| 466 | +const progressOption = ref([ | ||
| 467 | + { | ||
| 468 | + value: 0, | ||
| 469 | + label: "待承接", | ||
| 470 | + }, | ||
| 471 | + { | ||
| 472 | + value: 1, | ||
| 473 | + label: "已承接", | ||
| 474 | + }, | ||
| 475 | +]); | ||
| 476 | + | ||
| 477 | +const options = [ | ||
| 478 | + { | ||
| 479 | + value: 0, | ||
| 480 | + label: "系统分配", | ||
| 481 | + }, | ||
| 482 | + { | ||
| 483 | + value: 1, | ||
| 484 | + label: "人工分配", | ||
| 485 | + }, | ||
| 486 | +]; | ||
| 487 | +// 保单列表 | ||
| 488 | +const policyList = ref([]); | ||
| 489 | + | ||
| 490 | +// 计算时效 | ||
| 491 | +const timeDifference = computed(() => (row) => { | ||
| 492 | + let startTime = ""; | ||
| 493 | + let endTime = ""; | ||
| 494 | + // 判断协会是否处理了,如果没有则不计算时效 | ||
| 495 | + if (row.distributionTime !== null) { | ||
| 496 | + startTime = new Date(row.distributionTime); | ||
| 497 | + } else { | ||
| 498 | + return "无"; | ||
| 499 | + } | ||
| 500 | + // 判断结束时间,已办结时间为最后时间,如果没有则使用员工承接时间 | ||
| 501 | + if (row.policyTime !== null) { | ||
| 502 | + endTime = new Date(row.policyTime); | ||
| 503 | + } else if (row.companyEmployeeUndertakeTime !== null) { | ||
| 504 | + endTime = new Date(row.companyEmployeeUndertakeTime); | ||
| 505 | + } else { | ||
| 506 | + endTime = Date.now(); | ||
| 507 | + } | ||
| 508 | + return intervalTime(startTime, endTime); | ||
| 509 | +}); | ||
| 510 | +// 车辆使用性质 | ||
| 511 | +const carNatureOption = ref([]); | ||
| 512 | +const getcarNatureOption = async () => { | ||
| 513 | + const { data } = await queryCarNature(getParams); | ||
| 514 | + carNatureOption.value = data.records; | ||
| 515 | +}; | ||
| 516 | +getcarNatureOption(); | ||
| 517 | + | ||
| 518 | +// 保险需求 | ||
| 519 | +const needOption = ref([]); | ||
| 520 | +const getNeedOption = async () => { | ||
| 521 | + const { data } = await queryNeed(getParams); | ||
| 522 | + needOption.value = data.records; | ||
| 523 | +}; | ||
| 524 | +getNeedOption(); | ||
| 525 | + | ||
| 526 | +/** 导出按钮操作 */ | ||
| 527 | +function handleExport() { | ||
| 528 | + proxy.download( | ||
| 529 | + "registration/monitor/export", | ||
| 530 | + { | ||
| 531 | + ...queryParams, | ||
| 532 | + }, | ||
| 533 | + `user_${new Date().getTime()}.xlsx` | ||
| 534 | + ); | ||
| 535 | +} | ||
| 536 | + | ||
| 537 | +// 选择时间范围 | ||
| 538 | +const handleTime = (valu) => { | ||
| 539 | + queryParams.startTime = proxy.parseTime(valu[0]); | ||
| 540 | + queryParams.endTime = proxy.parseTime(valu[1]); | ||
| 541 | +}; | ||
| 542 | +// 获取保单列表 | ||
| 543 | +const getList = async () => { | ||
| 544 | + loading.value = true; | ||
| 545 | + const res = await queryList(queryParams); | ||
| 546 | + policyList.value = res.rows; | ||
| 547 | + total.value = res.total; | ||
| 548 | + loading.value = false; | ||
| 549 | +}; | ||
| 550 | + | ||
| 551 | +/** 重置操作表单 */ | ||
| 552 | +function reset() { | ||
| 553 | + proxy.resetForm("policyRef"); | ||
| 554 | +} | ||
| 555 | + | ||
| 556 | +/** 查询备注或回馈 */ | ||
| 557 | +const queryRemark = async (row) => { | ||
| 558 | + const { data } = await getCarDetail(row.businessKey); | ||
| 559 | + form.value = data; | ||
| 560 | + isCustom.value = data.isCustomizeBrandAndModel == "0"; | ||
| 561 | + if (row.policyStatus === "已作废") { | ||
| 562 | + labelTitle.value = "作废备注"; | ||
| 563 | + const { data } = await queryDefeatContent({ | ||
| 564 | + processInstanceId: row.processInstanceId, | ||
| 565 | + type: 2, | ||
| 566 | + }); | ||
| 567 | + form.value.comment = data.message; | ||
| 568 | + open.value = true; | ||
| 569 | + } else { | ||
| 570 | + queryResult({ processInstanceId: row.processInstanceId }).then((res) => { | ||
| 571 | + form.value.commercialInsurancePolicyNumber = | ||
| 572 | + res?.data?.commercialInsurancePolicyNumber; | ||
| 573 | + form.value.strongInsurancePolicyNumber = | ||
| 574 | + res?.data?.strongInsurancePolicyNumber; | ||
| 575 | + form.value.comment = res?.data?.message; | ||
| 576 | + open.value = true; | ||
| 577 | + }); | ||
| 578 | + } | ||
| 579 | +}; | ||
| 580 | + | ||
| 581 | +const getMsg = (val) => { | ||
| 582 | + form.value.comment = val; | ||
| 583 | +}; | ||
| 584 | + | ||
| 585 | +/** 搜索按钮操作 */ | ||
| 586 | +function handleQuery() { | ||
| 587 | + queryParams.pageNum = 1; | ||
| 588 | + getList(); | ||
| 589 | +} | ||
| 590 | +/** 重置按钮操作 */ | ||
| 591 | +function resetQuery() { | ||
| 592 | + proxy.resetForm("queryRef"); | ||
| 593 | + queryParams.startTime = ""; | ||
| 594 | + queryParams.endTime = ""; | ||
| 595 | + handleQuery(); | ||
| 596 | +} | ||
| 597 | +getList(); | ||
| 598 | +</script> | ||
| 599 | + | ||
| 600 | +<style> | ||
| 601 | +.total_line { | ||
| 602 | + display: flex; | ||
| 603 | + align-items: center; | ||
| 604 | + gap: 10px; | ||
| 605 | + margin-bottom: 20px; | ||
| 606 | + font-size: 14px; | ||
| 607 | + color: #666; | ||
| 608 | +} | ||
| 609 | +</style> |
| @@ -325,11 +325,28 @@ | @@ -325,11 +325,28 @@ | ||
| 325 | </el-form-item> | 325 | </el-form-item> |
| 326 | </el-col> | 326 | </el-col> |
| 327 | </el-row> | 327 | </el-row> |
| 328 | - <el-row> | ||
| 329 | - <el-col v-if="form.policyNumber" :span="12"> | ||
| 330 | - <el-form-item label="承保单号" prop="policyNumber"> | 328 | + <el-row |
| 329 | + v-if=" | ||
| 330 | + form.commercialInsurancePolicyNumber || | ||
| 331 | + form.strongInsurancePolicyNumber | ||
| 332 | + " | ||
| 333 | + > | ||
| 334 | + <el-col :span="12"> | ||
| 335 | + <el-form-item | ||
| 336 | + label="商险单号" | ||
| 337 | + prop="commercialInsurancePolicyNumber" | ||
| 338 | + > | ||
| 331 | <el-input | 339 | <el-input |
| 332 | - v-model="form.policyNumber" | 340 | + v-model="form.commercialInsurancePolicyNumber" |
| 341 | + disabled | ||
| 342 | + placeholder="请输入承保单号" | ||
| 343 | + /> | ||
| 344 | + </el-form-item> | ||
| 345 | + </el-col> | ||
| 346 | + <el-col :span="12"> | ||
| 347 | + <el-form-item label="强险单号" prop="strongInsurancePolicyNumber"> | ||
| 348 | + <el-input | ||
| 349 | + v-model="form.strongInsurancePolicyNumber" | ||
| 333 | disabled | 350 | disabled |
| 334 | placeholder="请输入承保单号" | 351 | placeholder="请输入承保单号" |
| 335 | /> | 352 | /> |
| @@ -359,7 +376,6 @@ | @@ -359,7 +376,6 @@ | ||
| 359 | import { | 376 | import { |
| 360 | queryList, | 377 | queryList, |
| 361 | queryResult, | 378 | queryResult, |
| 362 | - updateCarInfo, | ||
| 363 | queryDefeatContent, | 379 | queryDefeatContent, |
| 364 | getCarDetail, | 380 | getCarDetail, |
| 365 | } from "@/api/policy"; | 381 | } from "@/api/policy"; |
| @@ -409,6 +425,7 @@ const queryParams = reactive({ | @@ -409,6 +425,7 @@ const queryParams = reactive({ | ||
| 409 | licensePlate: "", | 425 | licensePlate: "", |
| 410 | association: "", | 426 | association: "", |
| 411 | company: "", | 427 | company: "", |
| 428 | + type: 0, | ||
| 412 | associationapprovetype: "", | 429 | associationapprovetype: "", |
| 413 | companyEmployeeUserName: "", | 430 | companyEmployeeUserName: "", |
| 414 | orderprogress: "", | 431 | orderprogress: "", |
| @@ -545,7 +562,10 @@ const queryRemark = async (row) => { | @@ -545,7 +562,10 @@ const queryRemark = async (row) => { | ||
| 545 | open.value = true; | 562 | open.value = true; |
| 546 | } else { | 563 | } else { |
| 547 | queryResult({ processInstanceId: row.processInstanceId }).then((res) => { | 564 | queryResult({ processInstanceId: row.processInstanceId }).then((res) => { |
| 548 | - form.value.policyNumber = res?.data?.policyNumber; | 565 | + form.value.commercialInsurancePolicyNumber = |
| 566 | + res?.data?.commercialInsurancePolicyNumber; | ||
| 567 | + form.value.strongInsurancePolicyNumber = | ||
| 568 | + res?.data?.strongInsurancePolicyNumber; | ||
| 549 | form.value.comment = res?.data?.message; | 569 | form.value.comment = res?.data?.message; |
| 550 | open.value = true; | 570 | open.value = true; |
| 551 | }); | 571 | }); |
| @@ -568,13 +588,6 @@ function resetQuery() { | @@ -568,13 +588,6 @@ function resetQuery() { | ||
| 568 | queryParams.endTime = ""; | 588 | queryParams.endTime = ""; |
| 569 | handleQuery(); | 589 | handleQuery(); |
| 570 | } | 590 | } |
| 571 | -const submit = async () => { | ||
| 572 | - updateCarInfo(form.value).then((response) => { | ||
| 573 | - proxy.$modal.msgSuccess("修改成功"); | ||
| 574 | - open.value = false; | ||
| 575 | - getList(); | ||
| 576 | - }); | ||
| 577 | -}; | ||
| 578 | getList(); | 591 | getList(); |
| 579 | </script> | 592 | </script> |
| 580 | 593 |
-
请 注册 或 登录 后发表评论