作者 xiaoqiu

完成接口对接

import request from '@/utils/request'
// 新增车辆品牌
export function addCarBrand(data) {
return request({
url: '/system/vehicle/brand/add',
method: 'post',
data
})
}
// 查询车辆品牌列表
export function queryCarBrand(query) {
return request({
url: '/system/vehicle/brand/getList',
method: 'get',
params: query
})
}
// 删除号牌种类
export function delCarBrand(data) {
return request({
url: '/system/vehicle/brand/delete',
method: 'post',
data
})
}
// 编辑号牌种类
export function updateCarBrand(data) {
return request({
url: '/system/vehicle/brand/edit',
method: 'post',
data
})
}
\ No newline at end of file
... ...
import request from '@/utils/request'
// 新增车辆品牌
export function addCarModel(data) {
return request({
url: '/system/vehicle/model/add',
method: 'post',
data
})
}
// 查询车辆品牌列表
export function queryCarModel(query) {
return request({
url: '/system/vehicle/model/getList',
method: 'get',
params: query
})
}
// 删除号牌种类
export function delCarModel(data) {
return request({
url: '/system/vehicle/model/delete',
method: 'post',
data
})
}
// 编辑号牌种类
export function updateCarModel(data) {
return request({
url: '/system/vehicle/model/edit',
method: 'post',
data
})
}
\ No newline at end of file
... ...
import request from '@/utils/request'
// 新增车辆品牌
export function addCarNature(data) {
return request({
url: '/system/vehicle/nature/add',
method: 'post',
data
})
}
// 查询车辆品牌列表
export function queryCarNature(query) {
return request({
url: '/system/vehicle/nature/getList',
method: 'get',
params: query
})
}
// 删除号牌种类
export function delCarNature(data) {
return request({
url: '/system/vehicle/nature/delete',
method: 'post',
data
})
}
// 编辑号牌种类
export function updateCarNature(data) {
return request({
url: '/system/vehicle/nature/edit',
method: 'post',
data
})
}
\ No newline at end of file
... ...
import request from '@/utils/request'
// 新增号牌种类
export function addCarNum(data) {
return request({
url: '/system/licenseplat/type/add',
method: 'post',
data
})
}
// 查询号牌种类
export function queryCarNum(query) {
return request({
url: '/system/licenseplat/type/getList',
method: 'get',
params: query
})
}
// 删除号牌种类
export function delCarNum(data) {
return request({
url: '/system/licenseplat/type/delete',
method: 'post',
data
})
}
// 编辑号牌种类
export function updateCarNum(data) {
return request({
url: '/system/licenseplat/type/edit',
method: 'post',
data
})
}
\ No newline at end of file
... ...
import request from '@/utils/request'
// 新增车辆品牌
export function addCarType(data) {
return request({
url: '/system/vehicle/type/add',
method: 'post',
data
})
}
// 查询车辆品牌列表
export function queryCarType(query) {
return request({
url: '/system/vehicle/type/getList',
method: 'get',
params: query
})
}
// 删除号牌种类
export function delCarType(data) {
return request({
url: '/system/vehicle/type/delete',
method: 'post',
data
})
}
// 编辑号牌种类
export function updateCarType(data) {
return request({
url: '/system/vehicle/type/edit',
method: 'post',
data
})
}
\ No newline at end of file
... ...
import request from '@/utils/request'
// 新增保险需求
export function addNeed(data) {
return request({
url: '/system/requirements/add',
method: 'post',
data
})
}
// 查询保险需求
export function queryNeed(query) {
return request({
url: '/system/requirements/getList',
method: 'get',
params: query
})
}
// 删除保险需求
export function delNeed(data) {
return request({
url: '/system/requirements/delete',
method: 'post',
data
})
}
// 修改保险需求
export function updateNeed(data) {
return request({
url: '/system/requirements/edit',
method: 'post',
data
})
}
\ No newline at end of file
... ...
import request from '@/utils/request'
// 新增规则
export function addRules(data) {
return request({
url: '/system/rule/addRules',
method: 'post',
data
})
}
// 查询规则列表
export function queryRules() {
return request({
url: '/system/rule/lsit',
method: 'get'
})
}
// 删除号牌种类
export function delRules(data) {
return request({
url: '/system/rule/removeRules',
method: 'post',
data
})
}
// 编辑号牌种类
export function updateRules(data) {
return request({
url: '/system/rule/editRules',
method: 'post',
data
})
}
\ No newline at end of file
... ...
... ... @@ -60,7 +60,15 @@ export const constantRoutes = [
{
path: '',
component: Layout,
redirect: '/policy/pending'
redirect: '/index',
children: [
{
path: '/index',
component: () => import('@/views/index'),
name: 'Index',
meta: { title: '首页', icon: 'dashboard', affix: true }
}
]
},
{
path: '/user',
... ...
... ... @@ -7,24 +7,15 @@
:inline="true"
label-width="68px"
>
<el-form-item label="车辆品牌" prop="brandName">
<el-form-item label="车辆品牌" prop="name">
<el-input
v-model="queryParams.brandName"
v-model="queryParams.name"
placeholder="填写车辆品牌"
clearable
style="width: 220px"
@keyup.enter="handleQuery"
/>
</el-form-item>
<el-form-item label="车辆型号" prop="modelName">
<el-input
v-model="queryParams.modelName"
placeholder="填写车辆型号"
clearable
style="width: 220px"
@keyup.enter="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="Search" @click="handleQuery"
>查询</el-button
... ... @@ -80,15 +71,17 @@
width="120"
align="center"
/>
<el-table-column label="车辆品牌" prop="brandName" align="center" />
<el-table-column label="车辆型号" prop="modelName" align="center" />
<el-table-column label="操作时间" prop="authTime" align="center" />
<el-table-column
label="操作人"
prop="editAuth"
width="100"
align="center"
/>
<el-table-column label="车辆品牌" prop="name" align="center" />
<el-table-column label="操作时间" align="center">
<template #default="{ row }">
<span>{{ row.updateTime || row.createTime }}</span>
</template>
</el-table-column>
<el-table-column label="操作人" align="center">
<template #default="{ row }">
<span>{{ row.updateBy || row.createBy }}</span>
</template>
</el-table-column>
<el-table-column
label="操作"
fixed="right"
... ... @@ -112,11 +105,8 @@
<!-- 添加或修改车辆性质配置对话框 -->
<el-dialog :title="title" v-model="open" width="500px" append-to-body>
<el-form ref="natureRef" :model="form" :rules="rules" label-width="120px">
<el-form-item label="车辆品牌" prop="brandName">
<el-input v-model="form.brandName" placeholder="请输入车辆性质名称" />
</el-form-item>
<el-form-item label="车辆型号" prop="modelName">
<el-input v-model="form.modelName" placeholder="请输入车辆性质名称" />
<el-form-item label="车辆品牌" prop="name">
<el-input v-model="form.name" placeholder="请输入车辆性质名称" />
</el-form-item>
</el-form>
<template #footer>
... ... @@ -177,6 +167,12 @@
</template>
<script setup>
import {
addCarBrand,
updateCarBrand,
queryCarBrand,
delCarBrand,
} from "@/api/configurationCenter/carBrand.js";
import { getToken } from "@/utils/auth";
const { proxy } = getCurrentInstance();
/*** 型号导入参数 */
... ... @@ -194,29 +190,7 @@ const upload = reactive({
// 上传的地址
url: import.meta.env.VITE_APP_BASE_API + "/system/user/importData",
});
const dataList = ref([
{
policyId: "1",
brandName: "阿尔法-罗密欧",
modelName: "156 4C Giulietta Mito",
authTime: "2024-09-24 11:53:43",
editAuth: "admin",
},
{
policyId: "2",
brandName: "梅赛德斯-AMG",
modelName: "C63AMG CLSAMG G63AMG S65AMG SL63AMG",
authTime: "2024-09-24 11:53:43",
editAuth: "admin",
},
{
policyId: "3",
brandName: "阿斯顿-马丁",
modelName: "DB9Cygnet DBS V12 Vantage V12 Zagato 一汽奥迪",
authTime: "2024-09-24 11:53:43",
editAuth: "admin",
},
]);
const dataList = ref([]);
const open = ref(false);
const multiple = ref(true);
const loading = ref(false);
... ... @@ -232,10 +206,18 @@ const rules = ref({
const queryParams = reactive({
pageNum: 1,
pageSize: 10,
brandName: undefined,
modelName: undefined,
name: undefined,
});
onMounted(() => {
getList();
});
// 获取号牌列表
const getList = async () => {
const { data } = await queryCarBrand(queryParams);
dataList.value = data.records;
total.value = data.total;
};
/**文件上传中处理 */
const handleFileUploadProgress = (event, file, fileList) => {
upload.isUploading = true;
... ... @@ -283,13 +265,12 @@ function handleUpdate(row) {
/** 删除按钮操作 */
function handleDelete(row) {
const natureIds = row.natureId || ids.value;
proxy.$modal
.confirm('是否确认删除车辆性质编号为"' + natureIds + '"的数据项?')
.then(function () {
// return delRole(natureIds);
proxy.$modal.msgSuccess("删除成功");
});
const Ids = row.id ? [row.id] : ids.value;
proxy.$modal.confirm("是否确认删除该数据项?").then(async () => {
await delCarBrand(Ids);
proxy.$modal.msgSuccess("删除成功");
getList();
});
}
/** 提交上传文件 */
function submitFileForm() {
... ... @@ -298,36 +279,44 @@ function submitFileForm() {
/** 重置新增的表单以及其他数据 */
function reset() {
form.value = {
natureId: undefined,
typeName: undefined,
authTime: undefined,
editAuth: undefined,
id: undefined,
name: undefined,
};
proxy.resetForm("natureRef");
}
/** 多选框选中数据 */
function handleSelectionChange(selection) {
ids.value = selection.map((item) => item.roleId);
ids.value = selection.map((item) => item.id);
multiple.value = !selection.length;
}
/** 搜索按钮操作 */
function handleQuery() {}
function handleQuery() {
queryParams.pageNum = 1;
getList();
}
/** 重置按钮操作 */
function resetQuery() {
proxy.resetForm("queryRef");
getList();
}
/** 提交按钮 */
function submitForm() {
proxy.$refs["natureRef"].validate((valid) => {
proxy.$refs["natureRef"].validate(async (valid) => {
if (valid) {
if (form.value.natureId != undefined) {
if (form.value.id != undefined) {
await updateCarBrand(form.value);
proxy.$modal.msgSuccess("修改成功");
getList();
open.value = false;
} else {
await addCarBrand(form.value);
getList();
proxy.$modal.msgSuccess("新增成功");
open.value = false;
}
}
});
... ...
<template>
<div class="app-container">
<!-- 筛选条件 -->
<el-form
:model="queryParams"
ref="queryRef"
:inline="true"
label-width="68px"
>
<el-form-item label="车辆品牌" prop="brandName">
<el-input
v-model="queryParams.brandName"
placeholder="填写车辆品牌"
clearable
style="width: 220px"
@keyup.enter="handleQuery"
/>
</el-form-item>
<el-form-item label="车辆型号" prop="modelName">
<el-input
v-model="queryParams.modelName"
placeholder="填写车辆型号"
clearable
style="width: 220px"
@keyup.enter="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="Search" @click="handleQuery"
>查询</el-button
>
<el-button icon="Refresh" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="Plus"
v-hasPermi="['system:role:add']"
@click="handleAdd"
>新增</el-button
>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="Delete"
:disabled="multiple"
v-hasPermi="['system:role:remove']"
@click="handleDelete"
>删除</el-button
>
</el-col>
<el-col :span="1.5">
<el-button
type="info"
plain
icon="Upload"
@click="handleImport"
v-hasPermi="['system:user:import']"
>导入</el-button
>
</el-col>
<!-- <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar> -->
</el-row>
<!-- 表格数据 -->
<el-table
v-loading="loading"
:data="dataList"
@selection-change="handleSelectionChange"
>
<el-table-column type="selection" width="55" align="center" />
<el-table-column
label="序号"
prop="policyId"
width="120"
align="center"
/>
<el-table-column label="车辆品牌" prop="brandName" align="center" />
<el-table-column label="车辆型号" prop="name" align="center" />
<el-table-column label="操作时间" align="center">
<template #default="{ row }">
<span>{{ row.updateTime || row.createTime }}</span>
</template>
</el-table-column>
<el-table-column label="操作人" align="center">
<template #default="{ row }">
<span>{{ row.updateBy || row.createBy }}</span>
</template>
</el-table-column>
<el-table-column
label="操作"
fixed="right"
align="center"
prop="Feedback"
>
<template #default="{ row }">
<el-button type="primary" @click="handleUpdate(row)">编辑</el-button>
<el-button type="danger" @click="handleDelete(row)">删除</el-button>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total > 0"
:total="total"
v-model:page="queryParams.pageNum"
v-model:limit="queryParams.pageSize"
/>
<!-- 添加或修改车辆性质配置对话框 -->
<el-dialog :title="title" v-model="open" width="500px" append-to-body>
<el-form ref="natureRef" :model="form" :rules="rules" label-width="120px">
<el-form-item label="车辆品牌" prop="brandId">
<el-select
v-model="form.brandId"
placeholder="选择车辆品牌"
clearable
>
<el-option
v-for="dict in brandList"
:key="dict.id"
:label="dict.name"
:value="dict.id"
/>
</el-select>
</el-form-item>
<el-form-item label="车辆型号" prop="name">
<el-input v-model="form.name" placeholder="请输入车辆型号名称" />
</el-form-item>
</el-form>
<template #footer>
<div class="dialog-footer">
<el-button type="primary" @click="submitForm">确 定</el-button>
<el-button @click="cancel">取 消</el-button>
</div>
</template>
</el-dialog>
<!-- 用户导入对话框 -->
<el-dialog
:title="upload.title"
v-model="upload.open"
width="400px"
append-to-body
>
<el-upload
ref="uploadRef"
:limit="1"
accept=".xlsx, .xls"
:headers="upload.headers"
:action="upload.url + '?updateSupport=' + upload.updateSupport"
:disabled="upload.isUploading"
:on-progress="handleFileUploadProgress"
:on-success="handleFileSuccess"
:auto-upload="false"
drag
>
<el-icon class="el-icon--upload"><upload-filled /></el-icon>
<div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
<template #tip>
<div class="el-upload__tip text-center">
<div class="el-upload__tip">
<el-checkbox
v-model="upload.updateSupport"
/>是否更新已经存在的型号数据
</div>
<span>仅允许导入xls、xlsx格式文件。</span>
<el-link
type="primary"
:underline="false"
style="font-size: 12px; vertical-align: baseline"
@click="importTemplate"
>下载模板</el-link
>
</div>
</template>
</el-upload>
<template #footer>
<div class="dialog-footer">
<el-button type="primary" @click="submitFileForm">确 定</el-button>
<el-button @click="upload.open = false">取 消</el-button>
</div>
</template>
</el-dialog>
</div>
</template>
<script setup>
import {
addCarModel,
updateCarModel,
queryCarModel,
delCarModel,
} from "@/api/configurationCenter/carModel.js";
import { queryCarBrand } from "@/api/configurationCenter/carBrand.js";
import { getToken } from "@/utils/auth";
const { proxy } = getCurrentInstance();
/*** 型号导入参数 */
const upload = reactive({
// 是否显示弹出层(用户导入)
open: false,
// 弹出层标题(用户导入)
title: "",
// 是否禁用上传
isUploading: false,
// 是否更新已经存在的用户数据
updateSupport: 0,
// 设置上传的请求头部
headers: { Authorization: "Bearer " + getToken() },
// 上传的地址
url: import.meta.env.VITE_APP_BASE_API + "/system/user/importData",
});
const dataList = ref([]);
const open = ref(false);
const multiple = ref(true);
const loading = ref(false);
const total = ref(0);
const title = ref("");
const ids = ref([]);
const form = ref({});
const rules = ref({
brandId: [{ required: true, message: "品牌名称不能为空", trigger: "change" }],
modelName: [{ required: true, message: "型号名称不能为空", trigger: "blur" }],
});
const queryParams = reactive({
pageNum: 1,
pageSize: 10,
brandName: undefined,
modelName: undefined,
});
const brandList = ref([]);
onMounted(() => {
getList();
getBrandList();
});
// 查询型号列表
const getList = async () => {
const { data } = await queryCarModel(queryParams);
dataList.value = data.records;
total.value = data.total;
};
// 查询品牌列表
const getBrandList = async () => {
const { data } = await queryCarBrand({ pageNum: 1, pageSize: 500 });
brandList.value = data.records;
};
/**文件上传中处理 */
const handleFileUploadProgress = (event, file, fileList) => {
upload.isUploading = true;
};
/** 文件上传成功处理 */
const handleFileSuccess = (response, file, fileList) => {
upload.open = false;
upload.isUploading = false;
proxy.$refs["uploadRef"].handleRemove(file);
proxy.$alert(
"<div style='overflow: auto;overflow-x: hidden;max-height: 70vh;padding: 10px 20px 0;'>" +
response.msg +
"</div>",
"导入结果",
{ dangerouslyUseHTMLString: true }
);
// getList();
};
/** 导入按钮操作 */
function handleImport() {
upload.title = "型号导入";
upload.open = true;
}
/** 下载模板操作 */
function importTemplate() {
proxy.download(
"system/user/importTemplate",
{},
`user_template_${new Date().getTime()}.xlsx`
);
}
/** 添加车辆性质 */
function handleAdd() {
reset();
open.value = true;
title.value = "添加车辆性质";
}
/** 修改角色 */
function handleUpdate(row) {
reset();
form.value = row;
title.value = "修改车辆性质";
open.value = true;
}
/** 删除按钮操作 */
function handleDelete(row) {
const natureIds = row.id ? [row.id] : ids.value;
proxy.$modal
.confirm('是否确认删除车辆性质编号为"' + natureIds + '"的数据项?')
.then(async () => {
await delCarModel(natureIds);
proxy.$modal.msgSuccess("删除成功");
getList();
});
}
/** 提交上传文件 */
function submitFileForm() {
proxy.$refs["uploadRef"].submit();
}
/** 重置新增的表单以及其他数据 */
function reset() {
form.value = {
id: undefined,
brandId: undefined,
name: undefined,
};
proxy.resetForm("natureRef");
}
/** 多选框选中数据 */
function handleSelectionChange(selection) {
ids.value = selection.map((item) => item.id);
multiple.value = !selection.length;
}
/** 搜索按钮操作 */
function handleQuery() {
queryParams.pageNum = 1;
getList();
}
/** 重置按钮操作 */
function resetQuery() {
proxy.resetForm("queryRef");
getList();
}
/** 提交按钮 */
function submitForm() {
proxy.$refs["natureRef"].validate(async (valid) => {
if (valid) {
if (form.value.id != undefined) {
await updateCarModel(form.value);
proxy.$modal.msgSuccess("修改成功");
getList();
open.value = false;
} else {
await addCarModel(form.value);
getList();
proxy.$modal.msgSuccess("新增成功");
open.value = false;
}
}
});
}
/** 取消按钮 */
function cancel() {
open.value = false;
reset();
}
</script>
<style></style>
... ...
<template>
<div>车辆品牌</div>
</template>
<script>
export default {};
</script>
<style></style>
... ... @@ -32,15 +32,18 @@
@selection-change="handleSelectionChange"
>
<el-table-column type="selection" width="55" align="center" />
<el-table-column
label="序号"
prop="policyId"
width="120"
align="center"
/>
<el-table-column label="车辆性质名称" prop="natureName" align="center" />
<el-table-column label="操作时间" prop="authTime" align="center" />
<el-table-column label="操作人" prop="editAuth" align="center" />
<el-table-column label="序号" prop="id" width="120" align="center" />
<el-table-column label="车辆性质名称" prop="name" align="center" />
<el-table-column label="操作时间" align="center">
<template #default="{ row }">
<span>{{ row.updateTime || row.createTime }}</span>
</template>
</el-table-column>
<el-table-column label="操作人" align="center">
<template #default="{ row }">
<span>{{ row.updateBy || row.createBy }}</span>
</template>
</el-table-column>
<el-table-column
label="操作"
fixed="right"
... ... @@ -64,11 +67,8 @@
<!-- 添加或修改车辆性质配置对话框 -->
<el-dialog :title="title" v-model="open" width="500px" append-to-body>
<el-form ref="natureRef" :model="form" :rules="rules" label-width="120px">
<el-form-item label="车辆性质名称" prop="natureName">
<el-input
v-model="form.natureName"
placeholder="请输入车辆性质名称"
/>
<el-form-item label="车辆性质名称" prop="name">
<el-input v-model="form.name" placeholder="请输入车辆性质名称" />
</el-form-item>
</el-form>
<template #footer>
... ... @@ -82,27 +82,14 @@
</template>
<script setup>
import {
addCarNature,
updateCarNature,
queryCarNature,
delCarNature,
} from "@/api/configurationCenter/carNature.js";
const { proxy } = getCurrentInstance();
const dataList = ref([
{
policyId: "1",
natureName: "营运车辆",
authTime: "2024-09-24 11:53:43",
editAuth: "admin",
},
{
policyId: "2",
natureName: "公务车辆",
authTime: "2024-09-24 11:53:43",
editAuth: "admin",
},
{
policyId: "3",
natureName: "私家车",
authTime: "2024-09-24 11:53:43",
editAuth: "admin",
},
]);
const dataList = ref([]);
const open = ref(false);
const multiple = ref(true);
const loading = ref(false);
... ... @@ -111,15 +98,23 @@ const title = ref("");
const ids = ref([]);
const form = ref({});
const rules = ref({
natureName: [
{ required: true, message: "角色名称不能为空", trigger: "blur" },
],
name: [{ required: true, message: "角色名称不能为空", trigger: "blur" }],
});
const queryParams = reactive({
pageNum: 1,
pageSize: 10,
});
onMounted(() => {
getList();
});
// 获取号牌列表
const getList = async () => {
const { data } = await queryCarNature(queryParams);
dataList.value = data.records;
total.value = data.total;
};
/** 添加车辆性质 */
function handleAdd() {
reset();
... ... @@ -136,40 +131,45 @@ function handleUpdate(row) {
/** 删除按钮操作 */
function handleDelete(row) {
const natureIds = row.natureId || ids.value;
const natureIds = row.id ? [row.id] : ids.value;
proxy.$modal
.confirm('是否确认删除车辆性质编号为"' + natureIds + '"的数据项?')
.then(function () {
// return delRole(natureIds);
.then(async () => {
await delCarNature(natureIds);
proxy.$modal.msgSuccess("删除成功");
getList();
});
}
/** 重置新增的表单以及其他数据 */
function reset() {
form.value = {
natureId: undefined,
natureName: undefined,
authTime: undefined,
editAuth: undefined,
id: undefined,
name: undefined,
};
proxy.resetForm("natureRef");
}
/** 多选框选中数据 */
function handleSelectionChange(selection) {
ids.value = selection.map((item) => item.roleId);
ids.value = selection.map((item) => item.id);
multiple.value = !selection.length;
}
/** 提交按钮 */
function submitForm() {
proxy.$refs["natureRef"].validate((valid) => {
proxy.$refs["natureRef"].validate(async (valid) => {
if (valid) {
if (form.value.natureId != undefined) {
if (form.value.id != undefined) {
await updateCarNature(form.value);
proxy.$modal.msgSuccess("修改成功");
getList();
open.value = false;
} else {
await addCarNature(form.value);
getList();
proxy.$modal.msgSuccess("新增成功");
open.value = false;
}
}
});
... ...
... ... @@ -2,12 +2,7 @@
<div class="app-container">
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="Plus"
v-hasPermi="['system:role:add']"
@click="handleAdd"
<el-button type="primary" plain icon="Plus" @click="handleAdd"
>新增</el-button
>
</el-col>
... ... @@ -17,12 +12,10 @@
plain
icon="Delete"
:disabled="multiple"
v-hasPermi="['system:role:remove']"
@click="handleDelete"
>删除</el-button
>
</el-col>
<!-- <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar> -->
</el-row>
<!-- 表格数据 -->
... ... @@ -32,15 +25,18 @@
@selection-change="handleSelectionChange"
>
<el-table-column type="selection" width="55" align="center" />
<el-table-column
label="序号"
prop="policyId"
width="120"
align="center"
/>
<el-table-column label="号牌种类名称" prop="numSort" align="center" />
<el-table-column label="操作时间" prop="authTime" align="center" />
<el-table-column label="操作人" prop="editAuth" align="center" />
<el-table-column label="序号" prop="id" width="120" align="center" />
<el-table-column label="号牌种类名称" prop="name" align="center" />
<el-table-column label="操作时间" align="center">
<template #default="{ row }">
<span>{{ row.updateTime || row.createTime }}</span>
</template>
</el-table-column>
<el-table-column label="操作人" align="center">
<template #default="{ row }">
<span>{{ row.updateBy || row.createBy }}</span>
</template>
</el-table-column>
<el-table-column
label="操作"
fixed="right"
... ... @@ -64,8 +60,8 @@
<!-- 添加或修改车辆性质配置对话框 -->
<el-dialog :title="title" v-model="open" width="500px" append-to-body>
<el-form ref="natureRef" :model="form" :rules="rules" label-width="120px">
<el-form-item label="号牌种类名称" prop="numSort">
<el-input v-model="form.numSort" placeholder="请输入号牌种类名称" />
<el-form-item label="号牌种类名称" prop="name">
<el-input v-model="form.name" placeholder="请输入号牌种类名称" />
</el-form-item>
</el-form>
<template #footer>
... ... @@ -79,49 +75,48 @@
</template>
<script setup>
import {
addCarNum,
updateCarNum,
queryCarNum,
delCarNum,
} from "@/api/configurationCenter/carNum.js";
import { onMounted } from "vue";
const { proxy } = getCurrentInstance();
const dataList = ref([
{
policyId: "1",
numSort: "蓝色车牌",
authTime: "2024-09-24 11:53:43",
editAuth: "admin",
},
{
policyId: "2",
numSort: "黄色车牌",
authTime: "2024-09-24 11:53:43",
editAuth: "admin",
},
{
policyId: "3",
numSort: "白色色车牌",
authTime: "2024-09-24 11:53:43",
editAuth: "admin",
},
]);
const dataList = ref([]);
const open = ref(false);
const multiple = ref(true);
const loading = ref(false);
const total = ref(5);
const total = ref(0);
const title = ref("");
const ids = ref([]);
const form = ref({});
const rules = ref({
numSort: [{ required: true, message: "角色名称不能为空", trigger: "blur" }],
name: [{ required: true, message: "角色名称不能为空", trigger: "blur" }],
});
const queryParams = reactive({
pageNum: 1,
pageSize: 10,
});
/** 添加车辆性质 */
onMounted(() => {
getList();
});
// 获取号牌列表
const getList = async () => {
const { data } = await queryCarNum(queryParams);
dataList.value = data.records;
total.value = data.total;
};
/** 添加号牌 */
function handleAdd() {
reset();
open.value = true;
title.value = "添加号牌种类";
}
/** 修改角色 */
/** 修改号牌 */
function handleUpdate(row) {
reset();
form.value = row;
... ... @@ -131,40 +126,43 @@ function handleUpdate(row) {
/** 删除按钮操作 */
function handleDelete(row) {
const natureIds = row.natureId || ids.value;
proxy.$modal
.confirm('是否确认删除车辆性质编号为"' + natureIds + '"的数据项?')
.then(function () {
// return delRole(natureIds);
proxy.$modal.msgSuccess("删除成功");
});
const natureIds = row.id ? [row.id] : ids.value;
proxy.$modal.confirm("是否确认删除该项的数据?").then(async () => {
await delCarNum(natureIds);
proxy.$modal.msgSuccess("删除成功");
getList();
});
}
/** 重置新增的表单以及其他数据 */
function reset() {
form.value = {
natureId: undefined,
numSort: undefined,
authTime: undefined,
editAuth: undefined,
id: undefined,
name: undefined,
};
proxy.resetForm("natureRef");
}
/** 多选框选中数据 */
function handleSelectionChange(selection) {
ids.value = selection.map((item) => item.roleId);
ids.value = selection.map((item) => item.id);
multiple.value = !selection.length;
}
/** 提交按钮 */
function submitForm() {
proxy.$refs["natureRef"].validate((valid) => {
proxy.$refs["natureRef"].validate(async (valid) => {
if (valid) {
if (form.value.natureId != undefined) {
if (form.value.id != undefined) {
await updateCarNum(form.value);
proxy.$modal.msgSuccess("修改成功");
getList();
open.value = false;
} else {
await addCarNum(form.value);
getList();
proxy.$modal.msgSuccess("新增成功");
open.value = false;
}
}
});
... ...
... ... @@ -55,15 +55,18 @@
@selection-change="handleSelectionChange"
>
<el-table-column type="selection" width="55" align="center" />
<el-table-column
label="序号"
prop="policyId"
width="120"
align="center"
/>
<el-table-column label="车辆类型" prop="typeName" align="center" />
<el-table-column label="操作时间" prop="authTime" align="center" />
<el-table-column label="操作人" prop="editAuth" align="center" />
<el-table-column label="序号" prop="id" width="120" align="center" />
<el-table-column label="车辆类型" prop="name" align="center" />
<el-table-column label="操作时间" align="center">
<template #default="{ row }">
<span>{{ row.updateTime || row.createTime }}</span>
</template>
</el-table-column>
<el-table-column label="操作人" align="center">
<template #default="{ row }">
<span>{{ row.updateBy || row.createBy }}</span>
</template>
</el-table-column>
<el-table-column
label="操作"
fixed="right"
... ... @@ -87,8 +90,8 @@
<!-- 添加或修改车辆性质配置对话框 -->
<el-dialog :title="title" v-model="open" width="500px" append-to-body>
<el-form ref="natureRef" :model="form" :rules="rules" label-width="120px">
<el-form-item label="车辆类型名称" prop="typeName">
<el-input v-model="form.typeName" placeholder="请输入车辆性质名称" />
<el-form-item label="车辆类型名称" prop="name">
<el-input v-model="form.name" placeholder="请输入车辆性质名称" />
</el-form-item>
</el-form>
<template #footer>
... ... @@ -102,27 +105,14 @@
</template>
<script setup>
import {
addCarType,
updateCarType,
queryCarType,
delCarType,
} from "@/api/configurationCenter/carType.js";
const { proxy } = getCurrentInstance();
const dataList = ref([
{
policyId: "1",
typeName: "小型车",
authTime: "2024-09-24 11:53:43",
editAuth: "admin",
},
{
policyId: "2",
typeName: "高级车型",
authTime: "2024-09-24 11:53:43",
editAuth: "admin",
},
{
policyId: "3",
typeName: "三厢车型",
authTime: "2024-09-24 11:53:43",
editAuth: "admin",
},
]);
const dataList = ref([]);
const open = ref(false);
const multiple = ref(true);
const loading = ref(false);
... ... @@ -141,38 +131,46 @@ const queryParams = reactive({
typeName: undefined,
});
onMounted(() => {
getList();
});
// 获取号牌列表
const getList = async () => {
const { data } = await queryCarType(queryParams);
dataList.value = data.records;
total.value = data.total;
};
/** 添加车辆性质 */
function handleAdd() {
reset();
open.value = true;
title.value = "添加车辆性质";
title.value = "添加车辆类型";
}
/** 修改角色 */
function handleUpdate(row) {
reset();
form.value = row;
title.value = "修改车辆性质";
title.value = "修改车辆类型";
open.value = true;
}
/** 删除按钮操作 */
function handleDelete(row) {
const natureIds = row.natureId || ids.value;
proxy.$modal
.confirm('是否确认删除车辆性质编号为"' + natureIds + '"的数据项?')
.then(function () {
// return delRole(natureIds);
proxy.$modal.msgSuccess("删除成功");
});
const natureIds = row.id ? [row.id] : ids.value;
proxy.$modal.confirm("是否确认删除该项的数据?").then(async () => {
await delCarType(natureIds);
proxy.$modal.msgSuccess("删除成功");
getList();
});
}
/** 重置新增的表单以及其他数据 */
function reset() {
form.value = {
natureId: undefined,
typeName: undefined,
authTime: undefined,
editAuth: undefined,
id: undefined,
name: undefined,
};
proxy.resetForm("natureRef");
}
... ... @@ -193,12 +191,18 @@ function resetQuery() {
/** 提交按钮 */
function submitForm() {
proxy.$refs["natureRef"].validate((valid) => {
proxy.$refs["natureRef"].validate(async (valid) => {
if (valid) {
if (form.value.natureId != undefined) {
if (form.value.id != undefined) {
await updateCarType(form.value);
proxy.$modal.msgSuccess("修改成功");
getList();
open.value = false;
} else {
await addCarType(form.value);
getList();
proxy.$modal.msgSuccess("新增成功");
open.value = false;
}
}
});
... ...
... ... @@ -2,12 +2,7 @@
<div class="app-container">
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="Plus"
v-hasPermi="['system:role:add']"
@click="handleAdd"
<el-button type="primary" plain icon="Plus" @click="handleAdd"
>新增</el-button
>
</el-col>
... ... @@ -17,7 +12,6 @@
plain
icon="Delete"
:disabled="multiple"
v-hasPermi="['system:role:remove']"
@click="handleDelete"
>删除</el-button
>
... ... @@ -32,15 +26,18 @@
@selection-change="handleSelectionChange"
>
<el-table-column type="selection" width="55" align="center" />
<el-table-column
label="序号"
prop="policyId"
width="120"
align="center"
/>
<el-table-column label="保险名称" prop="insuranceName" align="center" />
<el-table-column label="操作时间" prop="authTime" align="center" />
<el-table-column label="操作人" prop="editAuth" align="center" />
<el-table-column label="序号" prop="id" width="120" align="center" />
<el-table-column label="保险名称" prop="name" align="center" />
<el-table-column label="操作时间" align="center">
<template #default="{ row }">
<span>{{ row.updateTime || row.createTime }}</span>
</template>
</el-table-column>
<el-table-column label="操作人" align="center">
<template #default="{ row }">
<span>{{ row.updateBy || row.createBy }}</span>
</template>
</el-table-column>
<el-table-column
label="操作"
fixed="right"
... ... @@ -64,8 +61,8 @@
<!-- 添加或修改车辆性质配置对话框 -->
<el-dialog :title="title" v-model="open" width="500px" append-to-body>
<el-form ref="natureRef" :model="form" :rules="rules" label-width="120px">
<el-form-item label="保险名称" prop="insuranceName">
<el-input v-model="form.insuranceName" placeholder="请输入保险名称" />
<el-form-item label="保险名称" prop="name">
<el-input v-model="form.name" placeholder="请输入保险名称" />
</el-form-item>
</el-form>
<template #footer>
... ... @@ -79,27 +76,14 @@
</template>
<script setup>
import {
addNeed,
updateNeed,
queryNeed,
delNeed,
} from "@/api/configurationCenter/need.js";
const { proxy } = getCurrentInstance();
const dataList = ref([
{
policyId: "1",
insuranceName: "商业险",
authTime: "2024-09-24 11:53:43",
editAuth: "admin",
},
{
policyId: "2",
insuranceName: "人身安全险",
authTime: "2024-09-24 11:53:43",
editAuth: "admin",
},
{
policyId: "3",
insuranceName: "交强险",
authTime: "2024-09-24 11:53:43",
editAuth: "admin",
},
]);
const dataList = ref([]);
const open = ref(false);
const multiple = ref(true);
const loading = ref(false);
... ... @@ -108,65 +92,76 @@ const title = ref("");
const ids = ref([]);
const form = ref({});
const rules = ref({
insuranceName: [
{ required: true, message: "角色名称不能为空", trigger: "blur" },
],
name: [{ required: true, message: "保险需求不能为空", trigger: "blur" }],
});
const queryParams = reactive({
pageNum: 1,
pageSize: 10,
});
onMounted(() => {
getList();
});
// 获取需求列表
const getList = async () => {
const { data } = await queryNeed(queryParams);
dataList.value = data.records;
total.value = data.total;
};
/** 添加车辆性质 */
function handleAdd() {
reset();
open.value = true;
title.value = "添加号牌种类";
title.value = "添加保险需求";
}
/** 修改角色 */
function handleUpdate(row) {
reset();
form.value = row;
title.value = "修改号牌种类";
title.value = "修改保险需求";
open.value = true;
}
/** 删除按钮操作 */
function handleDelete(row) {
const natureIds = row.natureId || ids.value;
proxy.$modal
.confirm('是否确认删除车辆性质编号为"' + natureIds + '"的数据项?')
.then(function () {
// return delRole(natureIds);
proxy.$modal.msgSuccess("删除成功");
});
const Ids = row.id ? [row.id] : ids.value;
proxy.$modal.confirm("是否确认删除该数据项?").then(async () => {
await delNeed(Ids);
proxy.$modal.msgSuccess("删除成功");
getList();
});
}
/** 重置新增的表单以及其他数据 */
function reset() {
form.value = {
natureId: undefined,
numSort: undefined,
authTime: undefined,
editAuth: undefined,
id: undefined,
name: undefined,
};
proxy.resetForm("natureRef");
}
/** 多选框选中数据 */
function handleSelectionChange(selection) {
ids.value = selection.map((item) => item.roleId);
ids.value = selection.map((item) => item.id);
multiple.value = !selection.length;
}
/** 提交按钮 */
function submitForm() {
proxy.$refs["natureRef"].validate((valid) => {
proxy.$refs["natureRef"].validate(async (valid) => {
if (valid) {
if (form.value.natureId != undefined) {
await updateNeed(form.value);
getList();
proxy.$modal.msgSuccess("修改成功");
open.value = false;
} else {
await addNeed(form.value);
getList();
proxy.$modal.msgSuccess("新增成功");
open.value = false;
}
}
});
... ...
... ... @@ -33,21 +33,11 @@
@selection-change="handleSelectionChange"
>
<el-table-column type="selection" width="55" align="center" />
<el-table-column
label="序号"
prop="companyId"
width="120"
align="center"
/>
<el-table-column label="保险公司名称" prop="company" align="center" />
<el-table-column
label="周分配订单"
width="240"
align="center"
prop="orderNum"
>
<el-table-column label="序号" prop="id" align="center" />
<el-table-column label="保险公司名称" prop="deptName" align="center" />
<el-table-column label="周分配订单" width="240" align="center" prop="num">
<template #default="{ row }">
<el-input v-model="row.orderNum" type="number" />
<el-input v-model="row.num" type="num" />
</template>
</el-table-column>
<el-table-column
... ... @@ -57,9 +47,9 @@
width="180"
prop="Feedback"
>
<template #default>
<el-button type="primary">保存</el-button>
<el-button type="danger">删除</el-button>
<template #default="{ row }">
<el-button type="primary" @click="handleUpdate(row)">保存</el-button>
<el-button type="danger" @click="handleDelete(row)">删除</el-button>
</template>
</el-table-column>
</el-table>
... ... @@ -74,17 +64,25 @@
<!-- 添加或修改用户配置对话框 -->
<el-dialog :title="title" v-model="open" width="600px" append-to-body>
<el-form :model="form" :rules="rules" ref="rulesRef" label-width="80px">
<el-form-item label="公司名称" prop="company">
<el-input
v-model="form.company"
placeholder="请输入保险公司名称"
maxlength="30"
<el-form :model="form" :rules="rules" ref="rulesRef" label-width="100px">
<el-form-item label="承保公司名称" prop="deptId">
<el-tree-select
v-model="form.deptId"
:data="deptOptions"
:props="{
value: 'deptId',
label: 'deptName',
children: 'children',
}"
value-key="deptId"
placeholder="选择承保公司"
check-strictly
style="width: 100%"
/>
</el-form-item>
<el-form-item label="周分配量" prop="orderNum">
<el-form-item label="周分配量" prop="num">
<el-input
v-model="form.orderNum"
v-model="form.num"
type="number"
placeholder="请输入周分配订单量"
maxlength="30"
... ... @@ -102,9 +100,19 @@
</template>
<script setup>
import {
addRules,
updateRules,
queryRules,
delRules,
} from "@/api/configurationCenter/rules.js";
import { listDept } from "@/api/system/dept";
const { proxy } = getCurrentInstance();
const loading = ref(false);
const total = ref(3);
const multiple = ref(true);
const ids = ref([]);
const total = ref(0);
const deptOptions = ref([]);
const title = ref("添加分配规则");
const open = ref(false);
const queryParams = reactive({
... ... @@ -112,24 +120,31 @@ const queryParams = reactive({
pageSize: 10,
});
const form = reactive({});
const form = ref({});
const rules = {
company: [
{ required: true, message: "公司名称不能为空", trigger: "blur" },
{
min: 2,
max: 20,
message: "公司名称长度必须介于 2 和 20 之间",
trigger: "blur",
},
],
orderNum: [{ required: true, message: "订单量不能为空", trigger: "blur" }],
deptId: [{ required: true, message: "公司名称不能为空", trigger: "change" }],
num: [{ required: true, message: "订单量不能为空", trigger: "blur" }],
};
const rulesList = ref([]);
onMounted(() => {
getList();
getDeptList();
});
// 获取规则列表
const getList = async () => {
const { data } = await queryRules();
rulesList.value = data;
};
/** 查询部门列表 */
const getDeptList = () => {
loading.value = true;
listDept().then((response) => {
deptOptions.value = proxy.handleTree(response.data, "deptId");
loading.value = false;
});
};
const rulesList = ref([
{ companyId: 1, company: "平安银行", orderNum: 100 },
{ companyId: 2, company: "太平洋保险", orderNum: 200 },
{ companyId: 3, company: "北部湾保险", orderNum: 30 },
]);
/** 新增按钮操作 */
function handleAdd() {
... ... @@ -138,34 +153,52 @@ function handleAdd() {
title.value = "添加规则";
}
/** 修改角色 */
function handleUpdate(row) {
reset();
form.value = row;
title.value = "修改规则";
open.value = true;
}
/** 删除按钮操作 */
function handleDelete(row) {
const Ids = row.id ? [row.id] : ids.value;
proxy.$modal.confirm("是否确认删除该数据项?").then(async () => {
await delRules(Ids);
proxy.$modal.msgSuccess("删除成功");
getList();
});
}
/** 重置操作表单 */
function reset() {
form.value = {
companyId: undefined,
company: undefined,
orderNum: undefined,
id: undefined,
deptId: undefined,
num: undefined,
};
proxy.resetForm("rulesRef");
}
/** 多选框选中数据 */
function handleSelectionChange(selection) {
// ids.value = selection.map(item => item.roleId);
// single.value = selection.length != 1;
// multiple.value = !selection.length;
console.log(selection);
ids.value = selection.map((item) => item.roleId);
multiple.value = !selection.length;
}
const getList = () => {};
/** 提交按钮 */
function submitForm() {
proxy.$refs["rulesRef"].validate((valid) => {
proxy.$refs["rulesRef"].validate(async (valid) => {
if (valid) {
if (form.value.userId != undefined) {
if (form.value.id != undefined) {
await updateRules(form.value);
proxy.$modal.msgSuccess("修改成功");
getList();
open.value = false;
} else {
await addRules(form.value);
getList();
proxy.$modal.msgSuccess("新增成功");
open.value = false;
}
... ...