作者 xiaoqiu

优化了保单大厅

<template>
<div>车辆品牌</div>
</template>
<script>
export default {};
</script>
<style></style>
... ...
<template>
<div>车辆型号</div>
</template>
<script>
export default {};
</script>
<style></style>
... ...
<template>
<div>车辆性质管理</div>
</template>
<script>
export default {};
</script>
<style></style>
... ...
<template>
<div>号牌种类</div>
</template>
<script>
export default {};
</script>
<style></style>
... ...
<template>
<div>车辆类型</div>
</template>
<script>
export default {};
</script>
<style></style>
... ...
<template>
<div class="app-container">
<div class="tip">
提示:订单分配不以保险公司顺序进行分配,系统随机分配;重新添加或修改订单后,系统重新开始计算;分配颜度满了以后,系统重新计算
</div>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
... ... @@ -175,4 +179,10 @@ function cancel() {
}
</script>
<style></style>
<style scoped>
.tip {
font-size: 14px;
color: #666;
margin-bottom: 20px;
}
</style>
... ...
... ... @@ -48,6 +48,7 @@
v-loading="loading"
:data="policyList"
@selection-change="handleSelectionChange"
@row-click="handleUpdate"
>
<el-table-column type="selection" width="55" align="center" />
<el-table-column
... ... @@ -107,6 +108,98 @@
v-model:limit="queryParams.pageSize"
@pagination="getList"
/>
<el-dialog v-model="open" title="保单信息" width="700" append-to-body>
<el-form :model="form" ref="policyRef" label-width="100px">
<el-row>
<el-col :span="12">
<el-form-item label="车牌号" prop="carNum">
<el-input
v-model="form.carNum"
placeholder="请输入车牌号"
disabled
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="车架号" prop="frameNum">
<el-input
v-model="form.frameNum"
disabled
placeholder="请输入车架号"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="车主姓名" prop="name">
<el-input
v-model="form.name"
disabled
placeholder="请输入车主姓名"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="联系电话" prop="phone">
<el-input
v-model="form.phone"
disabled
placeholder="请输入联系电话"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="操作时间" prop="authTime">
<el-input
v-model="form.authTime"
disabled
placeholder="请输入操作时间"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="操作人员" prop="editAuth">
<el-input
v-model="form.editAuth"
disabled
placeholder="请输入操作人员"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="登记时间" prop="createTime">
<el-input
v-model="form.createTime"
disabled
placeholder="请输入登记时间"
/>
</el-form-item>
</el-col>
</el-row>
<el-form-item label="作废原因" prop="progress">
<el-input
:rows="6"
disabled
type="textarea"
placeholder="请输入作废原因"
v-model="form.deprecatedReason"
resize="none"
/>
</el-form-item>
</el-form>
<template #footer>
<div class="dialog-footer">
<el-button @click="open = false">取消</el-button>
<el-button type="primary" @click="open = false">确定</el-button>
</div>
</template>
</el-dialog>
</div>
</template>
... ... @@ -114,6 +207,8 @@
const { proxy } = getCurrentInstance();
const loading = ref(false);
const total = ref(5);
const open = ref(false);
const form = ref({});
const showSearch = ref(true);
const queryParams = reactive({
pageNum: 1,
... ... @@ -125,28 +220,6 @@ const queryParams = reactive({
status: "",
});
const statusOption = ref([
{
value: 0,
label: "疑难件",
},
{
value: 1,
label: "已办结",
},
]);
const options = [
{
value: 0,
label: "系统分配",
},
{
value: 1,
label: "人工分配",
},
];
const policyList = ref([
{
policyId: 1,
... ... @@ -161,6 +234,7 @@ const policyList = ref([
assignment: 0,
handler: "张三",
statue: 0,
deprecatedReason: "无",
},
{
policyId: 2,
... ... @@ -175,6 +249,7 @@ const policyList = ref([
assignment: 0,
handler: "张三",
status: 0,
deprecatedReason: "无",
},
{
policyId: 3,
... ... @@ -189,6 +264,7 @@ const policyList = ref([
assignment: 0,
handler: "张三",
status: 0,
deprecatedReason: "无",
},
{
policyId: 4,
... ... @@ -203,6 +279,7 @@ const policyList = ref([
assignment: 1,
handler: "张三",
status: 1,
deprecatedReason: "无",
},
{
policyId: 5,
... ... @@ -217,6 +294,7 @@ const policyList = ref([
assignment: 1,
handler: "张三",
status: 1,
deprecatedReason: "无",
},
]);
... ... @@ -228,6 +306,17 @@ function handleSelectionChange(selection) {
console.log(selection);
}
/** 重置操作表单 */
function reset() {
proxy.resetForm("policyRef");
}
/** 修改按钮操作 */
function handleUpdate(row) {
reset();
form.value = row;
open.value = true;
}
const getList = () => {};
/** 搜索按钮操作 */
... ...
... ... @@ -78,6 +78,7 @@
v-loading="loading"
:data="policyList"
@selection-change="handleSelectionChange"
@row-click="handleUpdate"
>
<el-table-column type="selection" width="55" align="center" />
<el-table-column
... ... @@ -167,6 +168,136 @@
v-model:limit="queryParams.pageSize"
@pagination="getList"
/>
<el-dialog v-model="open" title="保单信息" width="700" append-to-body>
<el-form :model="form" ref="policyRef" label-width="100px">
<el-row>
<el-col :span="12">
<el-form-item label="车牌号" prop="carNum">
<el-input
v-model="form.carNum"
placeholder="请输入车牌号"
disabled
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="车架号" prop="frameNum">
<el-input
v-model="form.frameNum"
disabled
placeholder="请输入车架号"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="车主姓名" prop="name">
<el-input
v-model="form.name"
disabled
placeholder="请输入车主姓名"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="联系电话" prop="phone">
<el-input
v-model="form.phone"
disabled
placeholder="请输入联系电话"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="登记时间" prop="createTime">
<el-input
v-model="form.createTime"
disabled
placeholder="请输入登记时间"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="办理人" prop="handler">
<el-input
v-model="form.handler"
disabled
placeholder="请输入办理人"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="分配机制" prop="createTime">
<el-select
v-model="form.assignment"
placeholder="系统分配"
clearable
disabled
style="width: 230px"
>
<el-option
v-for="dict in options"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="承保公司" prop="company">
<el-input
v-model="form.company"
disabled
placeholder="请输入承保公司"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="保单状态" prop="progress">
<el-select
v-model="form.status"
placeholder="保单状态"
clearable
disabled
style="width: 230px"
>
<el-option
v-for="dict in statusOption"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-form-item label="保单回馈" prop="progress">
<el-input
:rows="6"
disabled
type="textarea"
placeholder="请输入保单回馈"
v-model="form.feedbank"
resize="none"
/>
</el-form-item>
</el-form>
<template #footer>
<div class="dialog-footer">
<el-button @click="open = false">取消</el-button>
<el-button type="primary" @click="open = false">确定</el-button>
</div>
</template>
</el-dialog>
</div>
</template>
... ... @@ -174,6 +305,8 @@
const { proxy } = getCurrentInstance();
const loading = ref(false);
const total = ref(5);
const open = ref(false);
const form = ref({});
const showSearch = ref(true);
const queryParams = reactive({
pageNum: 1,
... ... @@ -221,6 +354,7 @@ const policyList = ref([
assignment: 0,
handler: "张三",
statue: 0,
feedbank: "无",
},
{
policyId: 2,
... ... @@ -235,6 +369,7 @@ const policyList = ref([
assignment: 0,
handler: "张三",
status: 0,
feedbank: "无",
},
{
policyId: 3,
... ... @@ -249,6 +384,7 @@ const policyList = ref([
assignment: 0,
handler: "张三",
status: 0,
feedbank: "无",
},
{
policyId: 4,
... ... @@ -263,6 +399,7 @@ const policyList = ref([
assignment: 1,
handler: "张三",
status: 1,
feedbank: "无",
},
{
policyId: 5,
... ... @@ -277,6 +414,7 @@ const policyList = ref([
assignment: 1,
handler: "张三",
status: 1,
feedbank: "无",
},
]);
... ... @@ -287,7 +425,17 @@ function handleSelectionChange(selection) {
// multiple.value = !selection.length;
console.log(selection);
}
/** 重置操作表单 */
function reset() {
proxy.resetForm("policyRef");
}
/** 修改按钮操作 */
function handleUpdate(row) {
reset();
form.value = row;
open.value = true;
}
const getList = () => {};
/** 搜索按钮操作 */
... ...
... ... @@ -78,6 +78,7 @@
v-loading="loading"
:data="policyList"
@selection-change="handleSelectionChange"
@row-click="handleUpdate"
>
<el-table-column type="selection" width="55" align="center" />
<el-table-column
... ... @@ -167,6 +168,147 @@
v-model:limit="queryParams.pageSize"
@pagination="getList"
/>
<!-- 编辑对话框 -->
<el-dialog v-model="open" title="保单信息" width="700" append-to-body>
<el-form :model="form" ref="policyRef" label-width="100px">
<el-row>
<el-col :span="12">
<el-form-item label="车牌号" prop="carNum">
<el-input
v-model="form.carNum"
placeholder="请输入车牌号"
disabled
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="车架号" prop="frameNum">
<el-input
v-model="form.frameNum"
disabled
placeholder="请输入车架号"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="车主姓名" prop="name">
<el-input
v-model="form.name"
disabled
placeholder="请输入车主姓名"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="联系电话" prop="phone">
<el-input
v-model="form.phone"
disabled
placeholder="请输入联系电话"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="登记时间" prop="createTime">
<el-input
v-model="form.createTime"
disabled
placeholder="请输入登记时间"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="办理人" prop="handler">
<el-input
v-model="form.handler"
disabled
placeholder="请输入办理人"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="操作时间" prop="authTime">
<el-input
v-model="form.authTime"
disabled
placeholder="请输入操作时间"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="操作人员" prop="editAuth">
<el-input
v-model="form.editAuth"
disabled
placeholder="请输入操作人员"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="分配机制" prop="createTime">
<el-select
v-model="form.assignment"
placeholder="系统分配"
clearable
disabled
style="width: 230px"
>
<el-option
v-for="dict in options"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="承保公司" prop="company">
<el-input
v-model="form.company"
disabled
placeholder="请输入承保公司"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="保单进度" prop="progress">
<el-select
v-model="form.progress"
placeholder="保单进度"
clearable
disabled
style="width: 230px"
>
<el-option
v-for="dict in progressOption"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>
</el-row>
</el-form>
<template #footer>
<div class="dialog-footer">
<el-button @click="open = false">取消</el-button>
<el-button type="primary" @click="open = false">确定</el-button>
</div>
</template>
</el-dialog>
</div>
</template>
... ... @@ -174,6 +316,8 @@
const { proxy } = getCurrentInstance();
const loading = ref(false);
const total = ref(5);
const open = ref(false);
const form = ref({});
const showSearch = ref(true);
const queryParams = reactive({
pageNum: 1,
... ... @@ -290,6 +434,18 @@ function handleSelectionChange(selection) {
const getList = () => {};
/** 重置操作表单 */
function reset() {
proxy.resetForm("policyRef");
}
/** 修改按钮操作 */
function handleUpdate(row) {
reset();
form.value = row;
open.value = true;
}
/** 搜索按钮操作 */
function handleQuery() {
queryParams.value.pageNum = 1;
... ...
... ... @@ -5,6 +5,7 @@
v-loading="loading"
:data="policyList"
@selection-change="handleSelectionChange"
@row-click="handleUpdate"
>
<el-table-column type="selection" width="55" align="center" />
<el-table-column
... ... @@ -45,33 +46,46 @@
align="center"
/>
<el-table-column label="操作" align="center" width="360" fixed="right">
<template #default="scope">
<template #default="{ row }">
<el-popconfirm
width="2000"
title="是否通过该保单?"
width="200"
hide-icon
:title="
row.company === '无'
? '该登记信息未选择上年承保公司,系统将执行自动分配规则'
: '该登记信息存在上年承保公司,系统自动流转保单至上年承保公司处理'
"
confirm-button-text="确定"
cancel-button-text="取消"
@confirm="handleSuccess(scope.row)"
@confirm="handleSuccess(row)"
>
<template #reference>
<el-button type="success">通过</el-button>
<el-button type="success" @click.stop="">通过</el-button>
</template>
</el-popconfirm>
<el-button
@click="handleFallback(scope.row)"
v-hasPermi="['system:role:remove']"
>退回</el-button
<el-popconfirm
width="200"
hide-icon
title="保单将退回至用户界面,用户修改后重新提交"
confirm-button-text="确定"
cancel-button-text="取消"
@confirm="handleFallback(row)"
>
<template #reference>
<el-button @click.stop="">退回</el-button>
</template>
</el-popconfirm>
<el-button
type="danger"
@click="handleVoid(scope.row)"
@click.stop="handleVoid(row)"
v-hasPermi="['system:role:edit']"
>作废</el-button
>
<el-button
type="primary"
@click="handleAuthCompany(scope.row)"
@click.stop="handleAuthCompany(row)"
v-hasPermi="['system:role:edit']"
>分配承保公司</el-button
>
... ... @@ -86,12 +100,171 @@
v-model:limit="queryParams.pageSize"
@pagination="getList"
/>
<!-- 表单作废对话框 -->
<el-dialog
v-model="deprecatedShow"
title="温馨提示:该保单作废后车牌号、车架号在本自然年度无法重新提交"
width="500"
append-to-body
>
<el-input
:rows="6"
type="textarea"
placeholder="请输入作废原因"
v-model="deprecatedReason"
resize="none"
/>
<template #footer>
<div class="dialog-footer">
<el-button @click="deprecatedShow = false">取消</el-button>
<el-button type="primary" @click="deprecatedShow = false"
>确定</el-button
>
</div>
</template>
</el-dialog>
<!-- 分配承保公司对话框 -->
<el-dialog
v-model="companyShow"
title="分配承保公司:"
width="500"
append-to-body
>
<div class="company_box">
<div class="header_top">
<el-input
v-model="companyValue"
style="width: 380px"
placeholder="请输入承保公司名称(支持模糊查询)"
prefix-icon="Search"
/>
<el-button type="primary">查询</el-button>
</div>
<el-radio-group v-model="company">
<el-radio
v-for="item in companyList"
:key="item.id"
:label="item.value"
>{{ item.label }}</el-radio
>
</el-radio-group>
</div>
<template #footer>
<div class="dialog-footer">
<el-button @click="companyShow = false">取消</el-button>
<el-button type="primary" @click="companyShow = false"
>确定</el-button
>
</div>
</template>
</el-dialog>
<!-- 编辑对话框 -->
<el-dialog v-model="open" :title="title" width="700" append-to-body>
<el-form :model="form" :rules="rules" ref="policyRef" label-width="100px">
<el-row>
<el-col :span="12">
<el-form-item label="车牌号" prop="carNum">
<el-input
v-model="form.carNum"
placeholder="请输入车牌号"
maxlength="30"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="车架号" prop="frameNum">
<el-input
v-model="form.frameNum"
placeholder="请输入车架号"
maxlength="30"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="车主姓名" prop="name">
<el-input
v-model="form.name"
placeholder="请输入车主姓名"
maxlength="11"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="联系电话" prop="phone">
<el-input
v-model="form.phone"
placeholder="请输入联系电话"
maxlength="50"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="登记时间" prop="createTime">
<el-input
v-model="form.createTime"
placeholder="请输入登记时间"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="上年承保公司" prop="company">
<el-input
v-model="form.company"
placeholder="请输入上年承保公司"
maxlength="50"
/>
</el-form-item>
</el-col>
</el-row>
</el-form>
<template #footer>
<div class="dialog-footer">
<el-button @click="open = false">取消</el-button>
<el-button type="primary" @click="open = false">确定</el-button>
</div>
</template>
</el-dialog>
</div>
</template>
<script setup>
const { proxy } = getCurrentInstance();
const loading = ref(false);
const total = ref(5);
const title = ref("保单信息");
const open = ref(false);
const form = ref({});
const rules = ref({
carNum: [{ required: true, message: "车牌号不能为空", trigger: "blur" }],
frameNum: [{ required: true, message: "车架号不能为空", trigger: "blur" }],
name: [{ required: true, message: "车主姓名不能为空", trigger: "blur" }],
createTime: [{ required: true, message: "日期不能为空", trigger: "blur" }],
phone: [
{
pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/,
message: "请输入正确的手机号码",
trigger: "blur",
},
],
});
const companyShow = ref(false);
const companyList = ref([
{ id: 1, value: 0, label: "中国太平洋保险集团" },
{ id: 2, value: 1, label: "中国平安财产保险股份有限公司" },
{ id: 3, value: 2, label: "北部湾财产保险股份有限公司" },
{ id: 4, value: 3, label: "华安财产保险股份有限公司" },
]);
const company = ref(2);
const companyValue = ref("");
const deprecatedShow = ref(false);
const deprecatedReason = ref("");
const queryParams = reactive({
pageNum: 1,
pageSize: 10,
... ... @@ -163,10 +336,50 @@ const handleFallback = () => {
};
const handleVoid = () => {
console.log("作废");
deprecatedShow.value = true;
};
const handleAuthCompany = () => {
console.log("分配承保公司");
companyShow.value = true;
};
/** 重置操作表单 */
function reset() {
form.value = {
policyId: undefined,
createTime: undefined,
carNum: undefined,
frameNum: undefined,
name: undefined,
phone: undefined,
company: undefined,
};
proxy.resetForm("policyRef");
}
/** 修改按钮操作 */
function handleUpdate(row) {
reset();
form.value = row;
open.value = true;
}
/** 提交按钮 */
function submitForm() {
proxy.$refs["policyRef"].validate((valid) => {
if (valid) {
proxy.$modal.msgSuccess("修改成功");
}
});
}
</script>
<style></style>
<style lang="scss" scoped>
::v-deep(.el-radio-group) {
align-items: start;
flex-direction: column;
}
.header_top {
display: flex;
align-items: center;
gap: 30px;
margin-bottom: 20px;
}
</style>
... ...
... ... @@ -63,6 +63,7 @@
v-loading="loading"
:data="policyList"
@selection-change="handleSelectionChange"
@row-click="handleUpdate"
>
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="序号" prop="policyId" width="120" />
... ... @@ -100,6 +101,127 @@
v-model:limit="queryParams.pageSize"
@pagination="getList"
/>
<!-- 查阅对话框 -->
<el-dialog v-model="open" title="保单信息" width="700" append-to-body>
<el-form :model="form" ref="policyRef" label-width="100px">
<el-row>
<el-col :span="12">
<el-form-item label="车牌号" prop="carNum">
<el-input
v-model="form.carNum"
placeholder="请输入车牌号"
disabled
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="车架号" prop="frameNum">
<el-input
v-model="form.frameNum"
disabled
placeholder="请输入车架号"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="车主姓名" prop="name">
<el-input
v-model="form.name"
disabled
placeholder="请输入车主姓名"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="联系电话" prop="phone">
<el-input
v-model="form.phone"
disabled
placeholder="请输入联系电话"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="登记时间" prop="createTime">
<el-input
v-model="form.createTime"
disabled
placeholder="请输入登记时间"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="上年承保公司" prop="last_year_company">
<el-input
v-model="form.last_year_company"
disabled
placeholder="请输入上年承保公司"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="操作时间" prop="authTime">
<el-input
v-model="form.authTime"
disabled
placeholder="请输入操作时间"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="操作人员" prop="editAuth">
<el-input
v-model="form.editAuth"
disabled
placeholder="请输入操作人员"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="分配机制" prop="createTime">
<el-select
v-model="form.assignment"
placeholder="系统分配"
clearable
disabled
style="width: 230px"
>
<el-option
v-for="dict in options"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="承保公司" prop="company">
<el-input
v-model="form.company"
disabled
placeholder="请输入承保公司"
/>
</el-form-item>
</el-col>
</el-row>
</el-form>
<template #footer>
<div class="dialog-footer">
<el-button @click="open = false">取消</el-button>
<el-button type="primary" @click="open = false">确定</el-button>
</div>
</template>
</el-dialog>
</div>
</template>
... ... @@ -107,6 +229,8 @@
const { proxy } = getCurrentInstance();
const loading = ref(false);
const total = ref(5);
const open = ref(false);
const form = ref({});
const showSearch = ref(true);
const queryParams = reactive({
pageNum: 1,
... ... @@ -206,6 +330,18 @@ function handleSelectionChange(selection) {
const getList = () => {};
/** 重置操作表单 */
function reset() {
proxy.resetForm("policyRef");
}
/** 修改按钮操作 */
function handleUpdate(row) {
reset();
form.value = row;
open.value = true;
}
/** 搜索按钮操作 */
function handleQuery() {
queryParams.value.pageNum = 1;
... ...
... ... @@ -85,7 +85,7 @@
v-model="queryParams.name"
placeholder="请输入车主"
clearable
style="width: 200px"
style="width: 220px"
@keyup.enter="handleQuery"
/>
</el-form-item>
... ... @@ -94,10 +94,19 @@
v-model="queryParams.carNum"
placeholder="请输入车牌号"
clearable
style="width: 200px"
style="width: 220px"
@keyup.enter="handleQuery"
/>
</el-form-item>
<el-form-item label="时间范围" prop="timeFrame">
<el-date-picker
v-model="queryParams.timeFrame"
type="datetimerange"
range-separator="To"
start-placeholder="开始时间"
end-placeholder="结束时间"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="Search" @click="handleQuery"
>查询</el-button
... ... @@ -105,12 +114,21 @@
<el-button icon="Refresh" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<!-- 数据统计 -->
<div class="total_line">
<span>统计:平安保险公司(10条)</span>
<span>已办结:3</span>
<span>未办结:3</span>
<span>待承接:2</span>
<span>已承接:2</span>
</div>
<!-- 表格数据 -->
<el-table
v-loading="loading"
:data="policyList"
@selection-change="handleSelectionChange"
@row-click="handleUpdate"
>
<el-table-column type="selection" width="55" align="center" />
<el-table-column
... ... @@ -218,6 +236,165 @@
v-model:limit="queryParams.pageSize"
@pagination="getList"
/>
<el-dialog v-model="open" title="保单信息" width="700" append-to-body>
<el-form :model="form" ref="policyRef" label-width="100px">
<el-row>
<el-col :span="12">
<el-form-item label="车牌号" prop="carNum">
<el-input
v-model="form.carNum"
placeholder="请输入车牌号"
disabled
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="车架号" prop="frameNum">
<el-input
v-model="form.frameNum"
disabled
placeholder="请输入车架号"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="车主姓名" prop="name">
<el-input
v-model="form.name"
disabled
placeholder="请输入车主姓名"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="联系电话" prop="phone">
<el-input
v-model="form.phone"
disabled
placeholder="请输入联系电话"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="分配机制" prop="createTime">
<el-select
v-model="form.assignment"
placeholder="系统分配"
clearable
disabled
style="width: 230px"
>
<el-option
v-for="dict in options"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="承保公司" prop="company">
<el-input
v-model="form.company"
disabled
placeholder="请输入承保公司"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="操作时间" prop="authTime">
<el-input
v-model="form.authTime"
disabled
placeholder="请输入操作时间"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="操作人员" prop="editAuth">
<el-input
v-model="form.editAuth"
disabled
placeholder="请输入操作人员"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="保单状态" prop="progress">
<el-select
v-model="form.status"
placeholder="保单状态"
clearable
disabled
style="width: 230px"
>
<el-option
v-for="dict in statusOption"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="保单进度" prop="progress">
<el-select
v-model="form.progress"
placeholder="保单进度"
clearable
disabled
style="width: 230px"
>
<el-option
v-for="dict in progressOption"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="登记时间" prop="createTime">
<el-input
v-model="form.createTime"
disabled
placeholder="请输入登记时间"
/>
</el-form-item>
</el-col>
</el-row>
<el-form-item label="作废原因" prop="progress">
<el-input
:rows="6"
disabled
type="textarea"
placeholder="请输入作废原因"
v-model="form.deprecatedReason"
resize="none"
/>
</el-form-item>
</el-form>
<template #footer>
<div class="dialog-footer">
<el-button @click="open = false">取消</el-button>
<el-button type="primary" @click="open = false">确定</el-button>
</div>
</template>
</el-dialog>
</div>
</template>
... ... @@ -225,6 +402,8 @@
const { proxy } = getCurrentInstance();
const loading = ref(false);
const total = ref(5);
const open = ref(false);
const form = ref({});
const showSearch = ref(true);
const queryParams = reactive({
pageNum: 1,
... ... @@ -237,6 +416,7 @@ const queryParams = reactive({
company: "",
handler: "",
status: "",
timeFrame: "",
});
const statusOption = ref([
... ... @@ -248,6 +428,10 @@ const statusOption = ref([
value: 1,
label: "已办结",
},
{
value: 3,
label: "已作废",
},
]);
const progressOption = ref([
... ... @@ -360,6 +544,18 @@ function handleSelectionChange(selection) {
const getList = () => {};
/** 重置操作表单 */
function reset() {
proxy.resetForm("policyRef");
}
/** 修改按钮操作 */
function handleUpdate(row) {
reset();
form.value = row;
open.value = true;
}
/** 搜索按钮操作 */
function handleQuery() {
queryParams.value.pageNum = 1;
... ... @@ -372,4 +568,13 @@ function resetQuery() {
}
</script>
<style></style>
<style>
.total_line {
display: flex;
align-items: center;
gap: 10px;
margin-bottom: 20px;
font-size: 14px;
color: #666;
}
</style>
... ...