| | |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item label="车辆类型" prop="vehicleType"> |
| | | <el-input |
| | | v-model="queryParams.vehicleType" |
| | | placeholder="请输入车辆类型" |
| | | clearable |
| | | size="small" |
| | | @keyup.enter.native="handleQuery" |
| | | /> |
| | | <el-select v-model="queryParams.vehicleType" placeholder="请选择车辆类型" clearable size="small"> |
| | | <el-option |
| | | v-for="dict in dict.type.sys_vehicle_type" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="状态" prop="status"> |
| | | <el-select v-model="queryParams.status" placeholder="请选择状态" clearable size="small"> |
| | |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="归属部门" prop="deptId"> |
| | | <el-select v-model="queryParams.deptId" placeholder="请选择部门" clearable size="small"> |
| | | <el-option |
| | | v-for="dept in deptList" |
| | | :key="dept.deptId" |
| | | :label="dept.deptName" |
| | | :value="dept.deptId" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | |
| | | <el-table-column type="selection" width="55" align="center" /> |
| | | <el-table-column label="车辆ID" align="center" prop="vehicleId" /> |
| | | <el-table-column label="车牌号" align="center" prop="vehicleNo" /> |
| | | <el-table-column label="车辆类型" align="center" prop="vehicleType" /> |
| | | <el-table-column label="车辆类型" align="center" prop="vehicleType"> |
| | | <template slot-scope="scope"> |
| | | <dict-tag :options="dict.type.sys_vehicle_type" :value="scope.row.vehicleType"/> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="车辆品牌" align="center" prop="vehicleBrand" /> |
| | | <el-table-column label="车辆型号" align="center" prop="vehicleModel" /> |
| | | <el-table-column label="平台标识" align="center" prop="platformCode"> |
| | | <template slot-scope="scope"> |
| | | <dict-tag :options="dict.type.sys_platform" :value="scope.row.platformCode"/> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="归属分公司" align="center" prop="deptNames" width="200"> |
| | | <template slot-scope="scope"> |
| | | <span v-if="scope.row.deptNames && scope.row.deptNames.length > 0"> |
| | | {{ scope.row.deptNames.join('、') }} |
| | | </span> |
| | | <span v-else>-</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="状态" align="center" prop="status"> |
| | |
| | | <el-input v-model="form.vehicleNo" placeholder="请输入车牌号" /> |
| | | </el-form-item> |
| | | <el-form-item label="车辆类型" prop="vehicleType"> |
| | | <el-input v-model="form.vehicleType" placeholder="请输入车辆类型" /> |
| | | <el-select v-model="form.vehicleType" placeholder="请选择车辆类型" clearable style="width: 100%"> |
| | | <el-option |
| | | v-for="dict in dict.type.sys_vehicle_type" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="车辆品牌" prop="vehicleBrand"> |
| | | <el-input v-model="form.vehicleBrand" placeholder="请输入车辆品牌" /> |
| | |
| | | >{{dict.label}}</el-radio> |
| | | </el-radio-group> |
| | | </el-form-item> |
| | | <el-form-item label="归属分公司" prop="deptIds"> |
| | | <el-select v-model="form.deptIds" placeholder="请选择归属分公司" multiple clearable style="width: 100%"> |
| | | <el-option |
| | | v-for="dept in deptList" |
| | | :key="dept.deptId" |
| | | :label="dept.deptName" |
| | | :value="dept.deptId" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="备注" prop="remark"> |
| | | <el-input v-model="form.remark" type="textarea" placeholder="请输入内容" /> |
| | | </el-form-item> |
| | |
| | | |
| | | <script> |
| | | import { listVehicle, getVehicle, delVehicle, addVehicle, updateVehicle } from "@/api/system/vehicle"; |
| | | import { listDept } from "@/api/system/dept"; |
| | | |
| | | export default { |
| | | name: "Vehicle", |
| | | dicts: ['sys_normal_disable', 'sys_platform'], |
| | | dicts: ['sys_normal_disable', 'sys_platform', 'sys_vehicle_type'], |
| | | data() { |
| | | return { |
| | | // 遮罩层 |
| | |
| | | total: 0, |
| | | // 车辆信息表格数据 |
| | | vehicleList: [], |
| | | // 部门列表数据 |
| | | deptList: [], |
| | | // 弹出层标题 |
| | | title: "", |
| | | // 是否显示弹出层 |
| | |
| | | vehicleBrand: null, |
| | | vehicleModel: null, |
| | | status: null, |
| | | platformCode: null |
| | | platformCode: null, |
| | | deptId: null |
| | | }, |
| | | // 表单参数 |
| | | form: { |
| | |
| | | vehicleModel: null, |
| | | status: "0", |
| | | remark: null, |
| | | platformCode: null |
| | | platformCode: null, |
| | | deptId: null, |
| | | deptIds: [] // 多个分公司ID数组 |
| | | }, |
| | | // 表单校验 |
| | | rules: { |
| | |
| | | ], |
| | | platformCode: [ |
| | | { required: true, message: "平台标识不能为空", trigger: "change" } |
| | | ], |
| | | deptIds: [ |
| | | { required: true, message: "归属分公司不能为空", trigger: "change", type: 'array' } |
| | | ] |
| | | } |
| | | }; |
| | | }, |
| | | created() { |
| | | this.getList(); |
| | | this.getDeptList(); |
| | | }, |
| | | methods: { |
| | | /** 查询车辆信息列表 */ |
| | |
| | | this.vehicleList = response.rows; |
| | | this.total = response.total; |
| | | this.loading = false; |
| | | }); |
| | | }, |
| | | /** 获取部门列表(只显示分公司:parent_id=100) */ |
| | | getDeptList() { |
| | | listDept({ parentId: 100 }).then(response => { |
| | | // 过滤出分公司(parent_id=100的部门) |
| | | if (response.data) { |
| | | this.deptList = response.data.filter(dept => dept.parentId === 100); |
| | | } else { |
| | | this.deptList = []; |
| | | } |
| | | }); |
| | | }, |
| | | // 取消按钮 |
| | |
| | | vehicleModel: null, |
| | | status: "0", |
| | | remark: null, |
| | | platformCode: null |
| | | platformCode: null, |
| | | deptId: null, |
| | | deptIds: [] // 重置为空数组 |
| | | }; |
| | | this.resetForm("form"); |
| | | }, |
| | |
| | | const vehicleId = row.vehicleId || this.ids |
| | | getVehicle(vehicleId).then(response => { |
| | | this.form = response.data; |
| | | // 如果没有deptIds,则从 deptId 和 deptName 中预填 |
| | | if (!this.form.deptIds || this.form.deptIds.length === 0) { |
| | | if (this.form.deptId) { |
| | | this.form.deptIds = [this.form.deptId]; |
| | | } else { |
| | | this.form.deptIds = []; |
| | | } |
| | | } |
| | | this.open = true; |
| | | this.title = "修改车辆信息"; |
| | | }); |
| | |
| | | submitForm() { |
| | | this.$refs["form"].validate(valid => { |
| | | if (valid) { |
| | | // 如果选择了多个分公司,将第一个设置为deptId(主分公司) |
| | | if (this.form.deptIds && this.form.deptIds.length > 0) { |
| | | this.form.deptId = this.form.deptIds[0]; |
| | | } |
| | | |
| | | if (this.form.vehicleId != null) { |
| | | updateVehicle(this.form).then(response => { |
| | | this.$modal.msgSuccess("修改成功"); |