forked from integrated_whb/integrated_whb_vue
Merge remote-tracking branch 'origin/dev' into dev
# Conflicts: # src/views/mechanical_files/beidou/index.vue # src/views/mechanical_files/taxation_manage/index.vuedev
commit
5cfc44479c
|
@ -110,13 +110,13 @@ export const DISPOSE_STATUS_LIST = [
|
||||||
];
|
];
|
||||||
|
|
||||||
export const TAXES_PERIOD = [
|
export const TAXES_PERIOD = [
|
||||||
// 处理状态
|
// 税费周期
|
||||||
{ ID: "1", NAME: "12个月", NUM: "12" },
|
{ ID: "1", NAME: "12个月", NUM: "12" },
|
||||||
{ ID: "0", NAME: "6个月", NUM: "6" },
|
{ ID: "0", NAME: "6个月", NUM: "6" },
|
||||||
];
|
];
|
||||||
|
|
||||||
export const EXPIRE_STATUS = [
|
export const EXPIRE_STATUS = [
|
||||||
// 处理状态
|
// 到期状态
|
||||||
{ ID: "1", NAME: "未到期" },
|
{ ID: "1", NAME: "未到期" },
|
||||||
{ ID: "0", NAME: "已到期" },
|
{ ID: "0", NAME: "已到期" },
|
||||||
];
|
];
|
||||||
|
@ -126,3 +126,28 @@ export const MAINTENANCE_LEVEL_LIST = [
|
||||||
{ ID: "1", NAME: "一级维保" },
|
{ ID: "1", NAME: "一级维保" },
|
||||||
{ ID: "2", NAME: "二级维保" },
|
{ ID: "2", NAME: "二级维保" },
|
||||||
];
|
];
|
||||||
|
export const NETWORK_STATE = [
|
||||||
|
// 入网状态
|
||||||
|
{ ID: "0", NAME: "已入网" },
|
||||||
|
{ ID: "1", NAME: "未入网" },
|
||||||
|
{ ID: "2", NAME: "超时入网" },
|
||||||
|
];
|
||||||
|
|
||||||
|
export const REMINDER_STATUS = [
|
||||||
|
// 提醒状态
|
||||||
|
{ ID: "0", NAME: "开启" },
|
||||||
|
{ ID: "1", NAME: "关闭" },
|
||||||
|
];
|
||||||
|
|
||||||
|
export const REMIND_DAYS = [
|
||||||
|
// 提醒天数
|
||||||
|
{ ID: "0", NAME: "30天", NUM: "30" },
|
||||||
|
{ ID: "1", NAME: "45天", NUM: "45" },
|
||||||
|
{ ID: "2", NAME: "90天", NUM: "90" }
|
||||||
|
];
|
||||||
|
|
||||||
|
// export const MAINTENANCE_LEVEL_LIST = [
|
||||||
|
// //维保等级
|
||||||
|
// {ID:'1',NAME:'一级维保'},
|
||||||
|
// {ID:'2',NAME:'二级维保'},
|
||||||
|
// ]
|
||||||
|
|
|
@ -31,6 +31,11 @@ const props = defineProps({
|
||||||
required: true,
|
required: true,
|
||||||
default: false,
|
default: false,
|
||||||
},
|
},
|
||||||
|
year: {
|
||||||
|
type: String,
|
||||||
|
required: false,
|
||||||
|
default: "",
|
||||||
|
},
|
||||||
title: {
|
title: {
|
||||||
type: String,
|
type: String,
|
||||||
default: "导入",
|
default: "导入",
|
||||||
|
@ -72,6 +77,7 @@ const fnSubmit = debounce(
|
||||||
const formData = new FormData();
|
const formData = new FormData();
|
||||||
formData.append("FFILE", data.form.file[0].raw);
|
formData.append("FFILE", data.form.file[0].raw);
|
||||||
formData.append("FFILEName", data.form.file[0].name);
|
formData.append("FFILEName", data.form.file[0].name);
|
||||||
|
formData.append("year", props.year);
|
||||||
emits("submit", formData);
|
emits("submit", formData);
|
||||||
},
|
},
|
||||||
{ atBegin: true }
|
{ atBegin: true }
|
||||||
|
|
|
@ -25,7 +25,7 @@ export const setClassFinish = (params) => post("/class/finish", params); // 班
|
||||||
export const setClassManagementDelay = (params) =>
|
export const setClassManagementDelay = (params) =>
|
||||||
post("/class/postpone", params); // 班级管理延期
|
post("/class/postpone", params); // 班级管理延期
|
||||||
export const getPersonnelList = (params) =>
|
export const getPersonnelList = (params) =>
|
||||||
post("/trainedusersign/listByEnt", { loading: false, params }); // 班级管理添加人员
|
post("/trainedusersign/listByEnt", { loading: false, ...params }); // 班级管理添加人员
|
||||||
export const getClassManagementView = (params) => post("/class/goEdit", params); // 班级管理查看
|
export const getClassManagementView = (params) => post("/class/goEdit", params); // 班级管理查看
|
||||||
export const setClassManagementAdd = (params) => post("/class/add", params); // 班级管理添加
|
export const setClassManagementAdd = (params) => post("/class/add", params); // 班级管理添加
|
||||||
export const setClassManagementEdit = (params) => post("/class/edit", params); // 班级管理修改
|
export const setClassManagementEdit = (params) => post("/class/edit", params); // 班级管理修改
|
||||||
|
|
|
@ -82,6 +82,7 @@
|
||||||
<layout-import-file
|
<layout-import-file
|
||||||
v-model:visible="data.importDialogVisible"
|
v-model:visible="data.importDialogVisible"
|
||||||
template-url="/TrafficFile/template/post.xls"
|
template-url="/TrafficFile/template/post.xls"
|
||||||
|
:year="year"
|
||||||
@submit="fnSubmitImport"
|
@submit="fnSubmitImport"
|
||||||
/>
|
/>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
|
@ -199,6 +200,8 @@ const fnImport = () => {
|
||||||
const fnSubmitImport = async (formData) => {
|
const fnSubmitImport = async (formData) => {
|
||||||
const resData = await setPostmanImport(formData);
|
const resData = await setPostmanImport(formData);
|
||||||
ElMessage.success(resData.msg);
|
ElMessage.success(resData.msg);
|
||||||
|
fnGetData();
|
||||||
|
fnImport();
|
||||||
};
|
};
|
||||||
const fnClose = () => {
|
const fnClose = () => {
|
||||||
emits("update:type", 0);
|
emits("update:type", 0);
|
||||||
|
|
|
@ -77,6 +77,11 @@ const props = defineProps({
|
||||||
required: true,
|
required: true,
|
||||||
default: () => {},
|
default: () => {},
|
||||||
},
|
},
|
||||||
|
curriculumId: {
|
||||||
|
type: String,
|
||||||
|
required: true,
|
||||||
|
default: "",
|
||||||
|
},
|
||||||
});
|
});
|
||||||
const emits = defineEmits(["update:visible", "update:form", "get-data"]);
|
const emits = defineEmits(["update:visible", "update:form", "get-data"]);
|
||||||
const { visible, form } = useVModels(props, emits);
|
const { visible, form } = useVModels(props, emits);
|
||||||
|
@ -121,8 +126,13 @@ const fnSubmit = debounce(
|
||||||
Object.keys(props.outerLayerForm).forEach((key) => {
|
Object.keys(props.outerLayerForm).forEach((key) => {
|
||||||
formData.append(key, props.outerLayerForm[key]);
|
formData.append(key, props.outerLayerForm[key]);
|
||||||
});
|
});
|
||||||
|
console.log(props.outerLayerForm);
|
||||||
formData.append("REVIEW_USER", form.value.REVIEW_USER);
|
formData.append("REVIEW_USER", form.value.REVIEW_USER);
|
||||||
|
formData.append("DEPARTMENT", form.value.DEPARTMENT_NAME);
|
||||||
|
formData.append("DUTIES", form.value.DUTIES);
|
||||||
formData.append("CHECK_OPINION", form.value.CHECK_OPINION);
|
formData.append("CHECK_OPINION", form.value.CHECK_OPINION);
|
||||||
|
formData.append("SIGN_PATH", form.value.SIGN_PICTURE);
|
||||||
|
formData.append("CURRICULUM_ID", props.curriculumId);
|
||||||
form.value.ARCHIVES_REVIEW_RECORD_ID &&
|
form.value.ARCHIVES_REVIEW_RECORD_ID &&
|
||||||
formData.append(
|
formData.append(
|
||||||
"ARCHIVES_REVIEW_RECORD_ID",
|
"ARCHIVES_REVIEW_RECORD_ID",
|
||||||
|
|
|
@ -139,4 +139,22 @@ const fnClose = () => {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
:deep {
|
||||||
|
.el-radio-group {
|
||||||
|
width: 100%;
|
||||||
|
justify-content: space-between;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
}
|
||||||
|
.el-radio-group .el-radio {
|
||||||
|
width: 25%;
|
||||||
|
margin-right: 0;
|
||||||
|
height: auto;
|
||||||
|
min-height: 30px;
|
||||||
|
}
|
||||||
|
.el-radio__input.is-disabled + span.el-radio__label {
|
||||||
|
white-space: break-spaces;
|
||||||
|
word-break: break-all;
|
||||||
|
line-height: 20px;
|
||||||
|
}
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
@ -125,7 +125,8 @@
|
||||||
v-model:form="data.addDialog.form"
|
v-model:form="data.addDialog.form"
|
||||||
:type="data.addDialog.type"
|
:type="data.addDialog.type"
|
||||||
:outer-layer-form="data.form"
|
:outer-layer-form="data.form"
|
||||||
@get-data="fnGetReviewRecordList"
|
:curriculum-id="curriculumId"
|
||||||
|
@get-data="fnGetData"
|
||||||
/>
|
/>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
@ -185,6 +186,7 @@ const data = reactive({
|
||||||
BOOK_NUM: "",
|
BOOK_NUM: "",
|
||||||
CORP_NAME: "",
|
CORP_NAME: "",
|
||||||
CREATTIME: "",
|
CREATTIME: "",
|
||||||
|
CURRICULUM_ID: "",
|
||||||
enterpriseName: "",
|
enterpriseName: "",
|
||||||
REVIEW_PERSON: "",
|
REVIEW_PERSON: "",
|
||||||
REVIEW_TIME: "",
|
REVIEW_TIME: "",
|
||||||
|
@ -237,6 +239,11 @@ const fnGetData = async () => {
|
||||||
data.form.CREATTIME = reviewInfo.pd.CREATTIME;
|
data.form.CREATTIME = reviewInfo.pd.CREATTIME;
|
||||||
await fnGetReviewRecordList();
|
await fnGetReviewRecordList();
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
data.reviewInfo = {};
|
||||||
|
data.reviewRecordList = [];
|
||||||
|
data.form.REVIEW_OPINIONS =
|
||||||
|
data.form.REVIEW_OPINIONS || "此教材符合相关文件要求,同意使用。";
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
const fnGetReviewRecordList = async () => {
|
const fnGetReviewRecordList = async () => {
|
||||||
|
|
|
@ -52,7 +52,6 @@
|
||||||
<el-table-column prop="NAME" label="班级名称" />
|
<el-table-column prop="NAME" label="班级名称" />
|
||||||
<el-table-column prop="START_TIME" label="培训开始时间" />
|
<el-table-column prop="START_TIME" label="培训开始时间" />
|
||||||
<el-table-column prop="END_TIME" label="培训结束时间" />
|
<el-table-column prop="END_TIME" label="培训结束时间" />
|
||||||
<el-table-column prop="STUDENT_NUM" label="学员人员数" />
|
|
||||||
<el-table-column label="班级状态">
|
<el-table-column label="班级状态">
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
{{ translationStatus(row.STATE, statusList) }}
|
{{ translationStatus(row.STATE, statusList) }}
|
||||||
|
@ -100,7 +99,9 @@ const statusList = [
|
||||||
{ ID: "6", NAME: "培训结束" },
|
{ ID: "6", NAME: "培训结束" },
|
||||||
];
|
];
|
||||||
const { list, pagination, searchForm, fnGetData, fnResetPagination } =
|
const { list, pagination, searchForm, fnGetData, fnResetPagination } =
|
||||||
useListData(getClassesList);
|
useListData(getClassesList, {
|
||||||
|
otherParams: { TRAINTYPE_ID: "c70bf859512241579a8a30fc5d1ae153" },
|
||||||
|
});
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped></style>
|
<style scoped></style>
|
||||||
|
|
|
@ -97,7 +97,9 @@ import { useRouter } from "vue-router";
|
||||||
|
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
const { list, pagination, searchForm, fnGetData, fnResetPagination } =
|
const { list, pagination, searchForm, fnGetData, fnResetPagination } =
|
||||||
useListData(getClassForHealthList);
|
useListData(getClassForHealthList, {
|
||||||
|
otherParams: { TRAINTYPE_ID: "c70bf859512241579a8a30fc5d1ae153" },
|
||||||
|
});
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped></style>
|
<style scoped></style>
|
||||||
|
|
|
@ -696,11 +696,13 @@
|
||||||
>分数:{{ data.paper.EXAMSCORE || 0 }}</span
|
>分数:{{ data.paper.EXAMSCORE || 0 }}</span
|
||||||
>
|
>
|
||||||
<span style="line-height: 50px; margin-left: 200px"
|
<span style="line-height: 50px; margin-left: 200px"
|
||||||
>签字:<img
|
>签字:
|
||||||
|
<img
|
||||||
v-if="data.SIGNATURE_PATH"
|
v-if="data.SIGNATURE_PATH"
|
||||||
:src="data.SIGNATURE_PATH"
|
:src="data.SIGNATURE_PATH"
|
||||||
style="height: 50px; width: 120px; vertical-align: top"
|
style="height: 50px; width: 120px; vertical-align: top"
|
||||||
/><span v-else>未参加考试</span></span
|
/>
|
||||||
|
<span v-else>未参加考试</span></span
|
||||||
>
|
>
|
||||||
<span style="line-height: 50px; margin-left: 200px"
|
<span style="line-height: 50px; margin-left: 200px"
|
||||||
>考试时间:{{ data.paper.EXAMTIMEEND }}</span
|
>考试时间:{{ data.paper.EXAMTIMEEND }}</span
|
||||||
|
@ -928,4 +930,22 @@ fnGetLearningRecord();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
:deep {
|
||||||
|
.el-radio-group {
|
||||||
|
width: 100%;
|
||||||
|
justify-content: space-between;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
}
|
||||||
|
.el-radio-group .el-radio {
|
||||||
|
width: 25%;
|
||||||
|
margin-right: 0;
|
||||||
|
height: auto;
|
||||||
|
min-height: 30px;
|
||||||
|
}
|
||||||
|
.el-radio__input.is-disabled + span.el-radio__label {
|
||||||
|
white-space: break-spaces;
|
||||||
|
word-break: break-all;
|
||||||
|
line-height: 20px;
|
||||||
|
}
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
@ -195,7 +195,7 @@ const data = reactive({
|
||||||
const classFileExportDialogVisible = ref(false);
|
const classFileExportDialogVisible = ref(false);
|
||||||
const { list, pagination, searchForm, fnGetData, fnResetPagination, tableRef } =
|
const { list, pagination, searchForm, fnGetData, fnResetPagination, tableRef } =
|
||||||
useListData(getUserClassesList, {
|
useListData(getUserClassesList, {
|
||||||
otherParams: { USER_ID },
|
otherParams: { USER_ID, TRAINTYPE_ID: "c70bf859512241579a8a30fc5d1ae153" },
|
||||||
});
|
});
|
||||||
const fnPersonnelRegistrationForm = (STUDENT_ID, USER_ID) => {
|
const fnPersonnelRegistrationForm = (STUDENT_ID, USER_ID) => {
|
||||||
data.personnelRegistrationFormDialog.STUDENT_ID = STUDENT_ID;
|
data.personnelRegistrationFormDialog.STUDENT_ID = STUDENT_ID;
|
||||||
|
|
|
@ -93,7 +93,7 @@
|
||||||
<tr>
|
<tr>
|
||||||
<td>岗位名称</td>
|
<td>岗位名称</td>
|
||||||
<td>
|
<td>
|
||||||
{{ info.POST_NAME }}
|
{{ info.TYPE_OF_WORK_NAME }}
|
||||||
</td>
|
</td>
|
||||||
<td>之前从事本岗位时间</td>
|
<td>之前从事本岗位时间</td>
|
||||||
<td colspan="2">
|
<td colspan="2">
|
||||||
|
|
|
@ -103,7 +103,9 @@ import ClassFile from "./components/class_file.vue";
|
||||||
|
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
const { list, pagination, searchForm, fnGetData, fnResetPagination, tableRef } =
|
const { list, pagination, searchForm, fnGetData, fnResetPagination, tableRef } =
|
||||||
useListData(getStudentsList);
|
useListData(getStudentsList, {
|
||||||
|
otherParams: { TRAINTYPE_ID: "c70bf859512241579a8a30fc5d1ae153" },
|
||||||
|
});
|
||||||
const classFileDialogVisible = ref(false);
|
const classFileDialogVisible = ref(false);
|
||||||
const fnBatchDownload = debounce(
|
const fnBatchDownload = debounce(
|
||||||
1000,
|
1000,
|
||||||
|
|
|
@ -11,6 +11,7 @@
|
||||||
{{ serialNumber(pagination, $index) }}
|
{{ serialNumber(pagination, $index) }}
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
<el-table-column prop="USERNAME" label="姓名" />
|
||||||
<el-table-column prop="SIGNTYPENAME" label="签字人员类型" />
|
<el-table-column prop="SIGNTYPENAME" label="签字人员类型" />
|
||||||
<el-table-column label="签字图片">
|
<el-table-column label="签字图片">
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
|
|
|
@ -233,4 +233,22 @@ watchEffect(() => {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
:deep {
|
||||||
|
.el-radio-group {
|
||||||
|
width: 100%;
|
||||||
|
justify-content: space-between;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
}
|
||||||
|
.el-radio-group .el-radio {
|
||||||
|
width: 25%;
|
||||||
|
margin-right: 0;
|
||||||
|
height: auto;
|
||||||
|
min-height: 30px;
|
||||||
|
}
|
||||||
|
.el-radio__input.is-disabled + span.el-radio__label {
|
||||||
|
white-space: break-spaces;
|
||||||
|
word-break: break-all;
|
||||||
|
line-height: 20px;
|
||||||
|
}
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
@ -387,6 +387,17 @@ const rules = {
|
||||||
],
|
],
|
||||||
FRAMES_NUMBER: [
|
FRAMES_NUMBER: [
|
||||||
{ required: true, message: "车架号不能为空", trigger: "change" },
|
{ required: true, message: "车架号不能为空", trigger: "change" },
|
||||||
|
{ min: 17, message: "车架号不能少于17位", trigger: "blur" },
|
||||||
|
{
|
||||||
|
validator: (rule, value, callback) => {
|
||||||
|
if (!/^[A-HJ-NPR-Z\d]{8}[X\d][A-HJ-NPR-Z\d]{3}\d{5}$/.test(value)) {
|
||||||
|
callback(new Error("车架号格式不正确"));
|
||||||
|
} else {
|
||||||
|
callback();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
trigger: "blur",
|
||||||
|
},
|
||||||
],
|
],
|
||||||
OPERATING_CERTIFICATE: [
|
OPERATING_CERTIFICATE: [
|
||||||
{ required: true, message: "营运证号不能为空", trigger: "blur" },
|
{ required: true, message: "营运证号不能为空", trigger: "blur" },
|
||||||
|
@ -434,6 +445,19 @@ const rules = {
|
||||||
OPERATING_CERTIFICATE_PHOTO: [
|
OPERATING_CERTIFICATE_PHOTO: [
|
||||||
{ required: true, message: "营运证照片不能为空", trigger: "blur" },
|
{ required: true, message: "营运证照片不能为空", trigger: "blur" },
|
||||||
],
|
],
|
||||||
|
ENGINE_NUMBER: [
|
||||||
|
{ required: true, message: "请输入发动机号", trigger: "blur" },
|
||||||
|
{ min: 7, max: 8, message: "请输入7-8位发动机号", trigger: "blur" },
|
||||||
|
{
|
||||||
|
pattern:
|
||||||
|
/^[A-Z0-9a-z\d]{7,8}$/,
|
||||||
|
message: "请输入正确的发动机号",
|
||||||
|
},
|
||||||
|
],
|
||||||
|
VOUCH_NUMBERLOAD: [
|
||||||
|
{ required: true, message: "请输入核定载人数", trigger: "blur" },
|
||||||
|
{ pattern: /^([1-9][0-9]*)$/, message: "请输入整数", trigger: "blur" },
|
||||||
|
]
|
||||||
};
|
};
|
||||||
const formRef = ref(null);
|
const formRef = ref(null);
|
||||||
const form = ref({
|
const form = ref({
|
||||||
|
|
|
@ -69,17 +69,7 @@
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
<el-form-item label="归属部门" prop="BELONGING_DEPARTMENT">
|
<el-form-item label="归属部门" prop="BELONGING_DEPARTMENT">
|
||||||
<el-select
|
<layout-department v-model="form.BELONGING_DEPARTMENT" />
|
||||||
v-model="form.BELONGING_DEPARTMENT"
|
|
||||||
placeholder="请选择归属部门"
|
|
||||||
>
|
|
||||||
<el-option
|
|
||||||
v-for="item in getBelongingDepartment"
|
|
||||||
:key="item.BIANMA"
|
|
||||||
:label="item.NAME"
|
|
||||||
:value="item.NAME"
|
|
||||||
/>
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
|
@ -195,7 +185,7 @@
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-divider content-position="left">检查内容</el-divider>
|
<el-divider content-position="left">详细信息</el-divider>
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
<el-form-item label="车辆品牌" prop="VEHICLE_BRAND">
|
<el-form-item label="车辆品牌" prop="VEHICLE_BRAND">
|
||||||
<el-input
|
<el-input
|
||||||
|
@ -330,7 +320,6 @@ import { ref } from "vue";
|
||||||
import {
|
import {
|
||||||
layoutFnGetVehicleColor,
|
layoutFnGetVehicleColor,
|
||||||
layoutFnGetTransportCategory,
|
layoutFnGetTransportCategory,
|
||||||
layoutFnGetBelongingDepartment,
|
|
||||||
layoutFnGetFuelType,
|
layoutFnGetFuelType,
|
||||||
layoutFnGetEmissionStandard,
|
layoutFnGetEmissionStandard,
|
||||||
layoutFnGetVehicleType,
|
layoutFnGetVehicleType,
|
||||||
|
@ -349,16 +338,21 @@ import { debounce } from "throttle-debounce";
|
||||||
import { useRoute, useRouter } from "vue-router";
|
import { useRoute, useRouter } from "vue-router";
|
||||||
import { addingPrefixToFile } from "@/assets/js/utils.js";
|
import { addingPrefixToFile } from "@/assets/js/utils.js";
|
||||||
import { setUploadImg } from "@/request/api.js";
|
import { setUploadImg } from "@/request/api.js";
|
||||||
|
import LayoutDepartment from "@/components/department/index.vue";
|
||||||
|
|
||||||
const route = useRoute();
|
const route = useRoute();
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
const { OPERATING_ID } = route.query;
|
const { OPERATING_ID } = route.query;
|
||||||
|
let plateNumber = ''
|
||||||
const isPlateNumberRepetition = async (rule, vehicleNumber, callback) => {
|
const isPlateNumberRepetition = async (rule, vehicleNumber, callback) => {
|
||||||
if (vehicleNumber) {
|
if (vehicleNumber) {
|
||||||
console.log("车牌号0-=0",vehicleNumber);
|
|
||||||
const vehicleCount = await findByPlateNumber({ vehicleNumber });
|
const vehicleCount = await findByPlateNumber({ vehicleNumber });
|
||||||
if(vehicleCount.pd) {
|
if(vehicleCount.pd) {
|
||||||
callback(new Error("车辆已存在"));
|
if(vehicleCount.pd.PLATE_NUMBER === plateNumber){
|
||||||
|
callback();
|
||||||
|
}else{
|
||||||
|
callback(new Error("车辆已存在"))
|
||||||
|
}
|
||||||
}else callback();
|
}else callback();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
@ -485,7 +479,6 @@ const form = ref({
|
||||||
});
|
});
|
||||||
const getVehicleColorList = await layoutFnGetVehicleColor();
|
const getVehicleColorList = await layoutFnGetVehicleColor();
|
||||||
const getTransportCategoryList = await layoutFnGetTransportCategory();
|
const getTransportCategoryList = await layoutFnGetTransportCategory();
|
||||||
const getBelongingDepartment = await layoutFnGetBelongingDepartment();
|
|
||||||
const getFuelTypeList = await layoutFnGetFuelType();
|
const getFuelTypeList = await layoutFnGetFuelType();
|
||||||
const getEmissionStandardList = await layoutFnGetEmissionStandard();
|
const getEmissionStandardList = await layoutFnGetEmissionStandard();
|
||||||
const getVehicleTypeList = await layoutFnGetVehicleType();
|
const getVehicleTypeList = await layoutFnGetVehicleType();
|
||||||
|
@ -502,6 +495,7 @@ const fnGetData = async () => {
|
||||||
form.value.OPERATING_CERTIFICATE_PHOTO = addingPrefixToFile(
|
form.value.OPERATING_CERTIFICATE_PHOTO = addingPrefixToFile(
|
||||||
resData.operatingcertificatephoto
|
resData.operatingcertificatephoto
|
||||||
);
|
);
|
||||||
|
plateNumber = form.value.PLATE_NUMBER
|
||||||
};
|
};
|
||||||
fnGetData();
|
fnGetData();
|
||||||
const fnSubmit = debounce(
|
const fnSubmit = debounce(
|
||||||
|
|
|
@ -17,7 +17,7 @@
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
<el-form-item label="车辆颜色" prop="VEHICLE_COLOR">
|
<el-form-item label="车辆颜色" prop="VEHICLE_COLOR">
|
||||||
<el-select v-model="searchForm.VEHICLE_COLOR">
|
<el-select v-model="searchForm.VEHICLE_COLOR" clearable>
|
||||||
<el-option
|
<el-option
|
||||||
v-for="item in troubleshootingCycleList"
|
v-for="item in troubleshootingCycleList"
|
||||||
:key="item.BIANMA"
|
:key="item.BIANMA"
|
||||||
|
@ -47,20 +47,19 @@
|
||||||
|
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
<el-form-item label="入网状态" prop="NETWORK_STATUS">
|
<el-form-item label="入网状态" prop="NETWORK_STATUS">
|
||||||
<el-select v-model="searchForm.NETWORK_STATUS">
|
<el-select v-model="searchForm.NETWORK_STATUS" clearable>
|
||||||
<el-option
|
<el-option
|
||||||
v-for="item in networkStatusLevelList"
|
v-for="item in NETWORK_STATE"
|
||||||
:key="item.BIANMA"
|
:key="item.ID"
|
||||||
:label="item.NAME"
|
:label="item.NAME"
|
||||||
:value="item.NAME"
|
:value="item.NAME"
|
||||||
/>
|
/>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
<!-- <el-col :span="6">
|
||||||
<el-col :span="6">
|
|
||||||
<el-form-item label="主动安全" prop="ACTIVE_SAFETY">
|
<el-form-item label="主动安全" prop="ACTIVE_SAFETY">
|
||||||
<el-select v-model="searchForm.ACTIVE_SAFETY">
|
<el-select v-model="searchForm.ACTIVE_SAFETY" clearable>
|
||||||
<el-option
|
<el-option
|
||||||
v-for="item in activeSafety"
|
v-for="item in activeSafety"
|
||||||
:key="item.BIANMA"
|
:key="item.BIANMA"
|
||||||
|
@ -69,18 +68,16 @@
|
||||||
/>
|
/>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>-->
|
||||||
<el-col :span="10">
|
<el-col :span="10">
|
||||||
<el-form-item label-width="10px">
|
<el-form-item label-width="10px">
|
||||||
<el-button type="primary" native-type="submit">搜索</el-button>
|
<el-button type="primary" native-type="submit">搜索</el-button>
|
||||||
<el-button native-type="reset" @click="fnResetPaginationTransfer">
|
<el-button native-type="reset" @click="fnResetPaginationTransfer">重置</el-button>
|
||||||
重置
|
|
||||||
</el-button>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="30">
|
<el-col :span="30">
|
||||||
<el-form-item label-width="10px" class="end">
|
<el-form-item label-width="10px" class="end">
|
||||||
<el-button>导出</el-button>
|
<el-button @click="fnExport">导出</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
|
@ -88,7 +85,9 @@
|
||||||
</el-card>
|
</el-card>
|
||||||
<layout-card>
|
<layout-card>
|
||||||
<layout-table
|
<layout-table
|
||||||
|
ref="tableRef"
|
||||||
v-model:pagination="pagination"
|
v-model:pagination="pagination"
|
||||||
|
row-key="OPERATING_ID"
|
||||||
:data="list"
|
:data="list"
|
||||||
@get-data="fnGetDataTransfer"
|
@get-data="fnGetDataTransfer"
|
||||||
>
|
>
|
||||||
|
@ -128,19 +127,7 @@
|
||||||
>
|
>
|
||||||
查看
|
查看
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button
|
|
||||||
type="primary"
|
|
||||||
text
|
|
||||||
link
|
|
||||||
@click="
|
|
||||||
router.push({
|
|
||||||
path: '/enterprise_management/basics_info_management/operation_vehicle/view',
|
|
||||||
query: { OPERATING_ID: row.OPERATING_ID },
|
|
||||||
})
|
|
||||||
"
|
|
||||||
>
|
|
||||||
画像
|
|
||||||
</el-button>
|
|
||||||
<el-button
|
<el-button
|
||||||
type="primary"
|
type="primary"
|
||||||
text
|
text
|
||||||
|
@ -188,8 +175,6 @@ import { serialNumber } from "@/assets/js/utils.js";
|
||||||
import useListData from "@/assets/js/useListData.js";
|
import useListData from "@/assets/js/useListData.js";
|
||||||
import {
|
import {
|
||||||
layoutFnGetVehicleColor,
|
layoutFnGetVehicleColor,
|
||||||
layoutFnGetNetworkStatus,
|
|
||||||
layoutFnGetActiveSafety,
|
|
||||||
} from "@/assets/js/operation_vehicle.js";
|
} from "@/assets/js/operation_vehicle.js";
|
||||||
import {
|
import {
|
||||||
getOperationVehicleList,
|
getOperationVehicleList,
|
||||||
|
@ -199,13 +184,12 @@ import { useRouter } from "vue-router";
|
||||||
import useButtonJurisdiction from "@/assets/js/useButtonJurisdiction.js";
|
import useButtonJurisdiction from "@/assets/js/useButtonJurisdiction.js";
|
||||||
import { debounce } from "throttle-debounce";
|
import { debounce } from "throttle-debounce";
|
||||||
import { ElMessage, ElMessageBox } from "element-plus";
|
import { ElMessage, ElMessageBox } from "element-plus";
|
||||||
|
import { NETWORK_STATE } from "@/assets/js/constant.js";
|
||||||
|
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
const { list, pagination, searchForm, fnGetData, fnResetPagination } =
|
const { list, pagination, searchForm, fnGetData, fnResetPagination, tableRef} =
|
||||||
useListData(getOperationVehicleList, {});
|
useListData(getOperationVehicleList, {});
|
||||||
const troubleshootingCycleList = await layoutFnGetVehicleColor();
|
const troubleshootingCycleList = await layoutFnGetVehicleColor();
|
||||||
const networkStatusLevelList = await layoutFnGetNetworkStatus();
|
|
||||||
const activeSafety = await layoutFnGetActiveSafety();
|
|
||||||
const fnGetDataTransfer = () => {
|
const fnGetDataTransfer = () => {
|
||||||
fnGetData({
|
fnGetData({
|
||||||
DEPTIDS: searchForm.value.DEPTIDS?.join(","),
|
DEPTIDS: searchForm.value.DEPTIDS?.join(","),
|
||||||
|
@ -228,6 +212,19 @@ const fnDelete = debounce(
|
||||||
{ atBegin: true }
|
{ atBegin: true }
|
||||||
);
|
);
|
||||||
|
|
||||||
|
const fnExport = async () => {
|
||||||
|
const selectionData = tableRef.value.getSelectionRows();
|
||||||
|
await ElMessageBox.confirm("确定要导出到excel吗?", { type: "warning" });
|
||||||
|
const DATA_IDS = selectionData.map((item) => item.OPERATING_ID).join(",");
|
||||||
|
window.location.href =
|
||||||
|
import.meta.env[import.meta.env.DEV ? "VITE_PROXY" : "VITE_BASE_URL"] +
|
||||||
|
"/operationunit/excel?" +
|
||||||
|
"&KEYWORDS=" +
|
||||||
|
(searchForm.value.KEYWORDS || "") +
|
||||||
|
"&DATA_IDS=" +
|
||||||
|
DATA_IDS;
|
||||||
|
};
|
||||||
|
|
||||||
const buttonJurisdiction = await useButtonJurisdiction("operation");
|
const buttonJurisdiction = await useButtonJurisdiction("operation");
|
||||||
</script>
|
</script>
|
||||||
<style scoped></style>
|
<style scoped></style>
|
||||||
|
|
|
@ -1,8 +1,11 @@
|
||||||
<template>
|
<template>
|
||||||
<layout-card>
|
<layout-card>
|
||||||
<div id="printContainer">
|
<div id="printContainer">
|
||||||
<el-divider content-position="left">车辆档案</el-divider>
|
<el-divider content-position="left">基本信息</el-divider>
|
||||||
<el-descriptions border>
|
<el-descriptions border>
|
||||||
|
<el-descriptions-item label="编号">
|
||||||
|
{{ info.GOODSSELFNUMBER }}
|
||||||
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="车牌号">
|
<el-descriptions-item label="车牌号">
|
||||||
{{ info.PLATE_NUMBER }}
|
{{ info.PLATE_NUMBER }}
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
|
@ -18,8 +21,11 @@
|
||||||
<el-descriptions-item label="营运证号">
|
<el-descriptions-item label="营运证号">
|
||||||
{{ info.OPERATING_CERTIFICATE }}
|
{{ info.OPERATING_CERTIFICATE }}
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="运输类别">
|
<el-descriptions-item label="归属部门">
|
||||||
{{ info.TRANSPORT_TYPE }}
|
{{ info.BELONGING_DEPARTMENT }}
|
||||||
|
</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="车辆类型">
|
||||||
|
{{ info.VEHICLE_TYPE }}
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="初登日期">
|
<el-descriptions-item label="初登日期">
|
||||||
{{ info.FIRSTSHOW_DATE }}
|
{{ info.FIRSTSHOW_DATE }}
|
||||||
|
@ -36,9 +42,6 @@
|
||||||
<el-descriptions-item label="车主电话">
|
<el-descriptions-item label="车主电话">
|
||||||
{{ info.VEHICLEOWNER_NUMBER }}
|
{{ info.VEHICLEOWNER_NUMBER }}
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="归属地区">
|
|
||||||
{{ info.HOME_TERRITORY }}
|
|
||||||
</el-descriptions-item>
|
|
||||||
<el-descriptions-item label="车主住址">
|
<el-descriptions-item label="车主住址">
|
||||||
{{ info.VEHICLEOWNER_ADDRESS }}
|
{{ info.VEHICLEOWNER_ADDRESS }}
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
|
@ -54,6 +57,12 @@
|
||||||
<el-descriptions-item label="实际住址">
|
<el-descriptions-item label="实际住址">
|
||||||
{{ info.PHYSICAL_ADDRESS }}
|
{{ info.PHYSICAL_ADDRESS }}
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="车载设备">
|
||||||
|
{{ info.VEHICLE_EQUIPMENT }}
|
||||||
|
</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="运输类别">
|
||||||
|
{{ info.TRANSPORT_TYPE }}
|
||||||
|
</el-descriptions-item>
|
||||||
</el-descriptions>
|
</el-descriptions>
|
||||||
<el-divider content-position="left">详细信息</el-divider>
|
<el-divider content-position="left">详细信息</el-divider>
|
||||||
<el-descriptions border>
|
<el-descriptions border>
|
||||||
|
@ -78,8 +87,8 @@
|
||||||
<el-descriptions-item label="准牵引质量">
|
<el-descriptions-item label="准牵引质量">
|
||||||
{{ info.RACTIONMASS_QUALITY }}
|
{{ info.RACTIONMASS_QUALITY }}
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item label="运输类别">
|
<el-descriptions-item label="核定载人数">
|
||||||
{{ info.TRANSPORT_TYPE }}
|
{{ info.VOUCH_NUMBERLOAD }}
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
</el-descriptions>
|
</el-descriptions>
|
||||||
<el-descriptions :column="1" border>
|
<el-descriptions :column="1" border>
|
||||||
|
@ -149,6 +158,7 @@ const info = ref({});
|
||||||
const fnGetData = async () => {
|
const fnGetData = async () => {
|
||||||
if (!OPERATING_ID) return;
|
if (!OPERATING_ID) return;
|
||||||
const resData = await findByIdOperatingVehicleInfo({ OPERATING_ID });
|
const resData = await findByIdOperatingVehicleInfo({ OPERATING_ID });
|
||||||
|
console.log("-=-=-=-",resData);
|
||||||
info.value = resData.pd;
|
info.value = resData.pd;
|
||||||
info.value.HEADSTOCK_PHOTO = addingPrefixToFile(resData.headstockphoto);
|
info.value.HEADSTOCK_PHOTO = addingPrefixToFile(resData.headstockphoto);
|
||||||
info.value.DRIVINGLICENSE_PHOTO = addingPrefixToFile(
|
info.value.DRIVINGLICENSE_PHOTO = addingPrefixToFile(
|
||||||
|
|
|
@ -308,7 +308,7 @@ const freightVehicleList = await getAssignedFreightTrailerList();
|
||||||
const assignedWayList = await layoutFnGetAssignedWay();
|
const assignedWayList = await layoutFnGetAssignedWay();
|
||||||
const operationList = await getAssignedOperationVehicleList();
|
const operationList = await getAssignedOperationVehicleList();
|
||||||
|
|
||||||
console.log("筛选后的挂车车辆",freightVehicleList);
|
|
||||||
const rules = {
|
const rules = {
|
||||||
ASSIGNED_VEHICLE_MODEL: [
|
ASSIGNED_VEHICLE_MODEL: [
|
||||||
{ required: true, message: "过户车型不能为空", trigger: "change" },
|
{ required: true, message: "过户车型不能为空", trigger: "change" },
|
||||||
|
@ -341,6 +341,12 @@ const rules = {
|
||||||
message: "请输入正确的手机号码",
|
message: "请输入正确的手机号码",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
|
NOW_OWNERS: [
|
||||||
|
{ required: true, message: "请输入现车主/业主", trigger: "blur" },
|
||||||
|
],
|
||||||
|
NOW_PLATE_NUMBER: [
|
||||||
|
{ required: true, message: "请输入现车牌号", trigger: "blur" },
|
||||||
|
]
|
||||||
};
|
};
|
||||||
const formRef = ref(null);
|
const formRef = ref(null);
|
||||||
const form = ref({
|
const form = ref({
|
||||||
|
@ -454,7 +460,6 @@ const fnGetVehicleInfo = async () => {
|
||||||
const FREIGHTTRAILER_ID =
|
const FREIGHTTRAILER_ID =
|
||||||
form.value.FREIGHTVEHICLELIST[i].FREIGHTTRAILER_ID;
|
form.value.FREIGHTVEHICLELIST[i].FREIGHTTRAILER_ID;
|
||||||
const resData = await getFreightTrailerView({ FREIGHTTRAILER_ID });
|
const resData = await getFreightTrailerView({ FREIGHTTRAILER_ID });
|
||||||
console.log("选中的货运挂车信息", resData);
|
|
||||||
info.value = resData.pd;
|
info.value = resData.pd;
|
||||||
form.value.VEHICLE.PLATE_NUMBER = info.value.PLATE_NUMBER;
|
form.value.VEHICLE.PLATE_NUMBER = info.value.PLATE_NUMBER;
|
||||||
form.value.VEHICLE.RAW_OWNERS = info.value.CAR_OWNERS;
|
form.value.VEHICLE.RAW_OWNERS = info.value.CAR_OWNERS;
|
||||||
|
|
|
@ -153,12 +153,20 @@
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="提醒天数" prop="REMINDER_DAYS">
|
<el-form-item label="提醒天数" prop="REMINDER_DAYS">
|
||||||
<el-input
|
<el-select v-model="form.REMINDER_DAYS" @change="getRemiderDate">
|
||||||
|
<el-option
|
||||||
|
v-for="item in REMIND_DAYS"
|
||||||
|
:key="item.NAME"
|
||||||
|
:label="item.NAME"
|
||||||
|
:value="item.NUM"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
<!-- <el-input
|
||||||
v-model.number="form.REMINDER_DAYS"
|
v-model.number="form.REMINDER_DAYS"
|
||||||
maxlength="50"
|
maxlength="50"
|
||||||
show-word-limit
|
show-word-limit
|
||||||
@change="getRemiderDate"
|
@change="getRemiderDate"
|
||||||
/>
|
/>-->
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
|
@ -240,6 +248,7 @@ import { ElMessage } from "element-plus";
|
||||||
import { useRoute, useRouter } from "vue-router";
|
import { useRoute, useRouter } from "vue-router";
|
||||||
import useFormValidate from "@/assets/js/useFormValidate.js";
|
import useFormValidate from "@/assets/js/useFormValidate.js";
|
||||||
import { addingPrefixToFile, subtractDaysFromDate } from "@/assets/js/utils.js";
|
import { addingPrefixToFile, subtractDaysFromDate } from "@/assets/js/utils.js";
|
||||||
|
import { REMIND_DAYS } from "@/assets/js/constant.js";
|
||||||
const route = useRoute();
|
const route = useRoute();
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
const BEIDOU_ID = route.query.BEIDOU_ID;
|
const BEIDOU_ID = route.query.BEIDOU_ID;
|
||||||
|
|
|
@ -153,12 +153,20 @@
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="提醒天数" prop="REMINDER_DAYS">
|
<el-form-item label="提醒天数" prop="REMINDER_DAYS">
|
||||||
<el-input
|
<el-select v-model="form.REMINDER_DAYS" @change="getRemiderDate">
|
||||||
|
<el-option
|
||||||
|
v-for="item in REMIND_DAYS"
|
||||||
|
:key="item.NAME"
|
||||||
|
:label="item.NAME"
|
||||||
|
:value="item.NUM"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
<!-- <el-input
|
||||||
v-model.number="form.REMINDER_DAYS"
|
v-model.number="form.REMINDER_DAYS"
|
||||||
maxlength="50"
|
maxlength="50"
|
||||||
show-word-limit
|
show-word-limit
|
||||||
@change="getRemiderDate"
|
@change="getRemiderDate"
|
||||||
/>
|
/>-->
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
|
@ -229,6 +237,7 @@ import { ElMessage } from "element-plus";
|
||||||
import { useRoute, useRouter } from "vue-router";
|
import { useRoute, useRouter } from "vue-router";
|
||||||
import useFormValidate from "@/assets/js/useFormValidate.js";
|
import useFormValidate from "@/assets/js/useFormValidate.js";
|
||||||
import { addingPrefixToFile, subtractDaysFromDate } from "@/assets/js/utils.js";
|
import { addingPrefixToFile, subtractDaysFromDate } from "@/assets/js/utils.js";
|
||||||
|
import { REMIND_DAYS } from "@/assets/js/constant.js";
|
||||||
const route = useRoute();
|
const route = useRoute();
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
const BEIDOU_ID = route.query.BEIDOU_ID;
|
const BEIDOU_ID = route.query.BEIDOU_ID;
|
||||||
|
@ -351,6 +360,12 @@ const fnSubmit = debounce(
|
||||||
if (form.value.BEIDOUINFO[i].raw)
|
if (form.value.BEIDOUINFO[i].raw)
|
||||||
await fnUploadImage(currentId, form.value.BEIDOUINFO[i].raw, 128);
|
await fnUploadImage(currentId, form.value.BEIDOUINFO[i].raw, 128);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
for (let i = 0; i < form.value.CONTRACT.length; i++) {
|
||||||
|
if (form.value.CONTRACT[i].raw) {
|
||||||
|
await fnUploadImage(currentId, form.value.CONTRACT[i].raw, "130"); // 合同图片
|
||||||
|
}
|
||||||
|
}
|
||||||
ElMessage.success("保存成功");
|
ElMessage.success("保存成功");
|
||||||
router.back();
|
router.back();
|
||||||
},
|
},
|
||||||
|
|
|
@ -179,12 +179,20 @@
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="提醒天数" prop="REMINDER_DAYS">
|
<el-form-item label="提醒天数" prop="REMINDER_DAYS">
|
||||||
<el-input
|
<el-select v-model="form.REMINDER_DAYS" @change="getRemiderDate">
|
||||||
|
<el-option
|
||||||
|
v-for="item in REMIND_DAYS"
|
||||||
|
:key="item.NAME"
|
||||||
|
:label="item.NAME"
|
||||||
|
:value="item.NUM"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
<!-- <el-input
|
||||||
v-model.number="form.REMINDER_DAYS"
|
v-model.number="form.REMINDER_DAYS"
|
||||||
maxlength="50"
|
maxlength="50"
|
||||||
show-word-limit
|
show-word-limit
|
||||||
@change="getRemiderDate"
|
@change="getRemiderDate"
|
||||||
/>
|
/>-->
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
|
@ -250,7 +258,7 @@ import {
|
||||||
setInspectAnnuallyEdit,
|
setInspectAnnuallyEdit,
|
||||||
getTrailerList,
|
getTrailerList,
|
||||||
} from "@/request/mechanical_files.js";
|
} from "@/request/mechanical_files.js";
|
||||||
import { OPERATING_VEHICLE_TYPE_LIST } from "@/assets/js/constant.js";
|
import { OPERATING_VEHICLE_TYPE_LIST, REMIND_DAYS } from "@/assets/js/constant.js";
|
||||||
import { layoutFnGetAnnualInspectionCycle } from "@/assets/js/data_dictionary.js";
|
import { layoutFnGetAnnualInspectionCycle } from "@/assets/js/data_dictionary.js";
|
||||||
import { setUploadImg } from "@/request/api.js";
|
import { setUploadImg } from "@/request/api.js";
|
||||||
import { ElMessage } from "element-plus";
|
import { ElMessage } from "element-plus";
|
||||||
|
@ -343,6 +351,7 @@ const getDueDate = () => {
|
||||||
};
|
};
|
||||||
const getRemiderDate = (val) => {
|
const getRemiderDate = (val) => {
|
||||||
if (val) {
|
if (val) {
|
||||||
|
console.log("REMINDER_DAYS",form.value.REMINDER_DAYS);
|
||||||
if (form.value.DUE_DATE) {
|
if (form.value.DUE_DATE) {
|
||||||
// 计算提醒日期
|
// 计算提醒日期
|
||||||
const reminderDateStr = subtractDaysFromDate(form.value.DUE_DATE, val);
|
const reminderDateStr = subtractDaysFromDate(form.value.DUE_DATE, val);
|
||||||
|
|
|
@ -177,12 +177,20 @@
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="提醒天数" prop="REMINDER_DAYS">
|
<el-form-item label="提醒天数" prop="REMINDER_DAYS">
|
||||||
<el-input
|
<el-select v-model="form.REMINDER_DAYS" @change="getRemiderDate">
|
||||||
|
<el-option
|
||||||
|
v-for="item in REMIND_DAYS"
|
||||||
|
:key="item.NAME"
|
||||||
|
:label="item.NAME"
|
||||||
|
:value="item.NUM"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
<!-- <el-input
|
||||||
v-model.number="form.REMINDER_DAYS"
|
v-model.number="form.REMINDER_DAYS"
|
||||||
maxlength="50"
|
maxlength="50"
|
||||||
show-word-limit
|
show-word-limit
|
||||||
@change="getRemiderDate"
|
@change="getRemiderDate"
|
||||||
/>
|
/>-->
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
|
@ -248,7 +256,7 @@ import {
|
||||||
setInspectAnnuallyEdit,
|
setInspectAnnuallyEdit,
|
||||||
getTrailerList,
|
getTrailerList,
|
||||||
} from "@/request/mechanical_files.js";
|
} from "@/request/mechanical_files.js";
|
||||||
import { OPERATING_VEHICLE_TYPE_LIST } from "@/assets/js/constant.js";
|
import { OPERATING_VEHICLE_TYPE_LIST, REMIND_DAYS } from "@/assets/js/constant.js";
|
||||||
import { layoutFnGetAnnualInspectionCycle } from "@/assets/js/data_dictionary.js";
|
import { layoutFnGetAnnualInspectionCycle } from "@/assets/js/data_dictionary.js";
|
||||||
import { setUploadImg } from "@/request/api.js";
|
import { setUploadImg } from "@/request/api.js";
|
||||||
import { ElMessage } from "element-plus";
|
import { ElMessage } from "element-plus";
|
||||||
|
|
|
@ -194,12 +194,20 @@
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="提醒天数" prop="REMINDER_DAYS">
|
<el-form-item label="提醒天数" prop="REMINDER_DAYS">
|
||||||
<el-input
|
<el-select v-model="form.REMINDER_DAYS" @change="getRemiderDate">
|
||||||
|
<el-option
|
||||||
|
v-for="item in REMIND_DAYS"
|
||||||
|
:key="item.NAME"
|
||||||
|
:label="item.NAME"
|
||||||
|
:value="item.NUM"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
<!-- <el-input
|
||||||
v-model.number="form.REMINDER_DAYS"
|
v-model.number="form.REMINDER_DAYS"
|
||||||
maxlength="50"
|
maxlength="50"
|
||||||
show-word-limit
|
show-word-limit
|
||||||
@change="getRemiderDate"
|
@change="getRemiderDate"
|
||||||
/>
|
/>-->
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
|
@ -278,7 +286,7 @@ import {
|
||||||
} from "@/request/mechanical_files.js";
|
} from "@/request/mechanical_files.js";
|
||||||
import {
|
import {
|
||||||
INSURANCEMENU,
|
INSURANCEMENU,
|
||||||
OPERATING_VEHICLE_TYPE_LIST,
|
OPERATING_VEHICLE_TYPE_LIST, REMIND_DAYS
|
||||||
} from "@/assets/js/constant.js";
|
} from "@/assets/js/constant.js";
|
||||||
import { setUploadImg } from "@/request/api.js";
|
import { setUploadImg } from "@/request/api.js";
|
||||||
import { ElMessage } from "element-plus";
|
import { ElMessage } from "element-plus";
|
||||||
|
|
|
@ -184,12 +184,20 @@
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="提醒天数" prop="REMINDER_DAYS">
|
<el-form-item label="提醒天数" prop="REMINDER_DAYS">
|
||||||
<el-input
|
<el-select v-model="form.REMINDER_DAYS" @change="getRemiderDate">
|
||||||
|
<el-option
|
||||||
|
v-for="item in REMIND_DAYS"
|
||||||
|
:key="item.NAME"
|
||||||
|
:label="item.NAME"
|
||||||
|
:value="item.NUM"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
<!-- <el-input
|
||||||
v-model.number="form.REMINDER_DAYS"
|
v-model.number="form.REMINDER_DAYS"
|
||||||
maxlength="50"
|
maxlength="50"
|
||||||
show-word-limit
|
show-word-limit
|
||||||
@change="getRemiderDate"
|
@change="getRemiderDate"
|
||||||
/>
|
/>-->
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
|
@ -266,7 +274,7 @@ import {
|
||||||
setInsureEdit,
|
setInsureEdit,
|
||||||
getTrailerList,
|
getTrailerList,
|
||||||
} from "@/request/mechanical_files.js";
|
} from "@/request/mechanical_files.js";
|
||||||
import { OPERATING_VEHICLE_TYPE_LIST } from "@/assets/js/constant.js";
|
import { OPERATING_VEHICLE_TYPE_LIST, REMIND_DAYS } from "@/assets/js/constant.js";
|
||||||
import { layoutFnGetInsuranceCompany } from "@/assets/js/data_dictionary.js";
|
import { layoutFnGetInsuranceCompany } from "@/assets/js/data_dictionary.js";
|
||||||
import { setUploadImg } from "@/request/api.js";
|
import { setUploadImg } from "@/request/api.js";
|
||||||
import { ElMessage } from "element-plus";
|
import { ElMessage } from "element-plus";
|
||||||
|
|
|
@ -177,12 +177,20 @@
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="提醒天数" prop="REMINDER_DAYS">
|
<el-form-item label="提醒天数" prop="REMINDER_DAYS">
|
||||||
<el-input
|
<el-select v-model="form.REMINDER_DAYS" @change="getRemiderDate">
|
||||||
|
<el-option
|
||||||
|
v-for="item in REMIND_DAYS"
|
||||||
|
:key="item.NAME"
|
||||||
|
:label="item.NAME"
|
||||||
|
:value="item.NUM"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
<!-- <el-input
|
||||||
v-model.number="form.REMINDER_DAYS"
|
v-model.number="form.REMINDER_DAYS"
|
||||||
maxlength="50"
|
maxlength="50"
|
||||||
show-word-limit
|
show-word-limit
|
||||||
@change="getRemiderDate"
|
@change="getRemiderDate"
|
||||||
/>
|
/>-->
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
|
@ -248,7 +256,7 @@ import {
|
||||||
setMaintenanceEdit,
|
setMaintenanceEdit,
|
||||||
getTrailerList,
|
getTrailerList,
|
||||||
} from "@/request/mechanical_files.js";
|
} from "@/request/mechanical_files.js";
|
||||||
import { MAINTENANCE_LEVEL_LIST } from "@/assets/js/constant.js";
|
import { MAINTENANCE_LEVEL_LIST, REMIND_DAYS } from "@/assets/js/constant.js";
|
||||||
import { setUploadImg } from "@/request/api.js";
|
import { setUploadImg } from "@/request/api.js";
|
||||||
import { ElMessage } from "element-plus";
|
import { ElMessage } from "element-plus";
|
||||||
import { useRoute, useRouter } from "vue-router";
|
import { useRoute, useRouter } from "vue-router";
|
||||||
|
|
|
@ -177,12 +177,20 @@
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="提醒天数" prop="REMINDER_DAYS">
|
<el-form-item label="提醒天数" prop="REMINDER_DAYS">
|
||||||
<el-input
|
<el-select v-model="form.REMINDER_DAYS" @change="getRemiderDate">
|
||||||
|
<el-option
|
||||||
|
v-for="item in REMIND_DAYS"
|
||||||
|
:key="item.NAME"
|
||||||
|
:label="item.NAME"
|
||||||
|
:value="item.NUM"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
<!-- <el-input
|
||||||
v-model.number="form.REMINDER_DAYS"
|
v-model.number="form.REMINDER_DAYS"
|
||||||
maxlength="50"
|
maxlength="50"
|
||||||
show-word-limit
|
show-word-limit
|
||||||
@change="getRemiderDate"
|
@change="getRemiderDate"
|
||||||
/>
|
/>-->
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
|
@ -248,7 +256,7 @@ import {
|
||||||
setMaintenanceEdit,
|
setMaintenanceEdit,
|
||||||
getTrailerList,
|
getTrailerList,
|
||||||
} from "@/request/mechanical_files.js";
|
} from "@/request/mechanical_files.js";
|
||||||
import { MAINTENANCE_LEVEL_LIST } from "@/assets/js/constant.js";
|
import { MAINTENANCE_LEVEL_LIST, REMIND_DAYS } from "@/assets/js/constant.js";
|
||||||
import { setUploadImg } from "@/request/api.js";
|
import { setUploadImg } from "@/request/api.js";
|
||||||
import { ElMessage } from "element-plus";
|
import { ElMessage } from "element-plus";
|
||||||
import { useRoute, useRouter } from "vue-router";
|
import { useRoute, useRouter } from "vue-router";
|
||||||
|
|
|
@ -151,12 +151,20 @@
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="提醒天数" prop="REMINDER_DAYS">
|
<el-form-item label="提醒天数" prop="REMINDER_DAYS">
|
||||||
<el-input
|
<el-select v-model="form.REMINDER_DAYS" @change="getRemiderDate">
|
||||||
|
<el-option
|
||||||
|
v-for="item in REMIND_DAYS"
|
||||||
|
:key="item.NAME"
|
||||||
|
:label="item.NAME"
|
||||||
|
:value="item.NUM"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
<!-- <el-input
|
||||||
v-model.number="form.REMINDER_DAYS"
|
v-model.number="form.REMINDER_DAYS"
|
||||||
maxlength="50"
|
maxlength="50"
|
||||||
show-word-limit
|
show-word-limit
|
||||||
@change="getRemiderDate"
|
@change="getRemiderDate"
|
||||||
/>
|
/>-->
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
|
@ -222,7 +230,7 @@ import {
|
||||||
setOperationsEdit,
|
setOperationsEdit,
|
||||||
getTrailerList,
|
getTrailerList,
|
||||||
} from "@/request/mechanical_files.js";
|
} from "@/request/mechanical_files.js";
|
||||||
import { OPERATING_VEHICLE_TYPE_LIST } from "@/assets/js/constant.js";
|
import { OPERATING_VEHICLE_TYPE_LIST, REMIND_DAYS } from "@/assets/js/constant.js";
|
||||||
import { layoutFnGetAnnualInspectionCycle } from "@/assets/js/data_dictionary.js";
|
import { layoutFnGetAnnualInspectionCycle } from "@/assets/js/data_dictionary.js";
|
||||||
import { setUploadImg } from "@/request/api.js";
|
import { setUploadImg } from "@/request/api.js";
|
||||||
import { ElMessage } from "element-plus";
|
import { ElMessage } from "element-plus";
|
||||||
|
|
|
@ -151,12 +151,20 @@
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="提醒天数" prop="REMINDER_DAYS">
|
<el-form-item label="提醒天数" prop="REMINDER_DAYS">
|
||||||
<el-input
|
<el-select v-model="form.REMINDER_DAYS" @change="getRemiderDate">
|
||||||
|
<el-option
|
||||||
|
v-for="item in REMIND_DAYS"
|
||||||
|
:key="item.NAME"
|
||||||
|
:label="item.NAME"
|
||||||
|
:value="item.NUM"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
<!-- <el-input
|
||||||
v-model.number="form.REMINDER_DAYS"
|
v-model.number="form.REMINDER_DAYS"
|
||||||
maxlength="50"
|
maxlength="50"
|
||||||
show-word-limit
|
show-word-limit
|
||||||
@change="getRemiderDate"
|
@change="getRemiderDate"
|
||||||
/>
|
/>-->
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
|
@ -222,7 +230,7 @@ import {
|
||||||
setOperationsEdit,
|
setOperationsEdit,
|
||||||
getTrailerList,
|
getTrailerList,
|
||||||
} from "@/request/mechanical_files.js";
|
} from "@/request/mechanical_files.js";
|
||||||
import { OPERATING_VEHICLE_TYPE_LIST } from "@/assets/js/constant.js";
|
import { OPERATING_VEHICLE_TYPE_LIST, REMIND_DAYS } from "@/assets/js/constant.js";
|
||||||
import { layoutFnGetAnnualInspectionCycle } from "@/assets/js/data_dictionary.js";
|
import { layoutFnGetAnnualInspectionCycle } from "@/assets/js/data_dictionary.js";
|
||||||
import { setUploadImg } from "@/request/api.js";
|
import { setUploadImg } from "@/request/api.js";
|
||||||
import { ElMessage } from "element-plus";
|
import { ElMessage } from "element-plus";
|
||||||
|
|
|
@ -70,7 +70,7 @@
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
<el-form-item label="所属省份" prop="PROVINCE">
|
<el-form-item label="所属省份" prop="PROVINCE">
|
||||||
<el-input
|
<el-input
|
||||||
v-model="form.Trailer.PROVINCE"
|
v-model="form.PROVINCE"
|
||||||
placeholder="--"
|
placeholder="--"
|
||||||
disabled
|
disabled
|
||||||
/>
|
/>
|
||||||
|
@ -153,23 +153,43 @@
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
<el-form-item label="到期日期" prop="EXPIRE_DATE">
|
<el-form-item label="到期日期" prop="EXPIRE_DATE">
|
||||||
<el-input v-model="form.EXPIRE_DATE" disabled />
|
<el-date-picker
|
||||||
|
v-model="form.EXPIRE_DATE"
|
||||||
|
value-format="YYYY-MM-DD"
|
||||||
|
format="YYYY-MM-DD"
|
||||||
|
type="date"
|
||||||
|
disabled
|
||||||
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-row>
|
<el-row>
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
<el-form-item label="提醒天数" prop="REMINDER_DAY">
|
<el-form-item label="提醒天数" prop="REMINDER_DAY">
|
||||||
<el-input
|
<el-select v-model="form.REMINDER_DAY" @change="fnGetReminderData">
|
||||||
|
<el-option
|
||||||
|
v-for="item in REMIND_DAYS"
|
||||||
|
:key="item.NAME"
|
||||||
|
:label="item.NAME"
|
||||||
|
:value="item.NUM"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
<!-- <el-input
|
||||||
v-model="form.REMINDER_DAY"
|
v-model="form.REMINDER_DAY"
|
||||||
placeholder="请填写提醒天数"
|
placeholder="请填写提醒天数"
|
||||||
@change="fnGetReminderData"
|
@change="fnGetReminderData"
|
||||||
/>
|
/>-->
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
<el-form-item label="提醒日期" prop="REMINDER_DATA">
|
<el-form-item label="提醒日期" prop="REMINDER_DATA">
|
||||||
<el-input v-model="form.REMINDER_DATA" disabled />
|
<el-date-picker
|
||||||
|
v-model="form.REMINDER_DATA"
|
||||||
|
value-format="YYYY-MM-DD"
|
||||||
|
format="YYYY-MM-DD"
|
||||||
|
type="date"
|
||||||
|
disabled
|
||||||
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
|
@ -223,10 +243,9 @@ import { getFreightTrailerView, getChoiceTrailerList } from "@/request/enterpris
|
||||||
import { ElMessage } from "element-plus";
|
import { ElMessage } from "element-plus";
|
||||||
import { useRouter } from "vue-router";
|
import { useRouter } from "vue-router";
|
||||||
import { addingPrefixToFile } from "@/assets/js/utils.js";
|
import { addingPrefixToFile } from "@/assets/js/utils.js";
|
||||||
import { TAXES_PERIOD } from "@/assets/js/constant.js";
|
import { REMIND_DAYS, TAXES_PERIOD } from "@/assets/js/constant.js";
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
const choiceTrailerList = await getChoiceTrailerList();
|
const choiceTrailerList = await getChoiceTrailerList();
|
||||||
console.log("筛选后的挂车车辆信息",choiceTrailerList);
|
|
||||||
const rules = {
|
const rules = {
|
||||||
TRAILER_VEHICLE: [
|
TRAILER_VEHICLE: [
|
||||||
{ required: true, message: "挂车车辆不能为空", trigger: "blur" },
|
{ required: true, message: "挂车车辆不能为空", trigger: "blur" },
|
||||||
|
@ -260,9 +279,6 @@ const rules = {
|
||||||
REMINDER_DATA: [
|
REMINDER_DATA: [
|
||||||
{ required: true, message: "提醒日期不能为空", trigger: "change" },
|
{ required: true, message: "提醒日期不能为空", trigger: "change" },
|
||||||
],
|
],
|
||||||
DRIVINGLICENSE_PHOTO: [
|
|
||||||
{ required: true, message: "行驶证照片不能为空", trigger: "change" },
|
|
||||||
],
|
|
||||||
FREIGHTTRAILER_ID: [
|
FREIGHTTRAILER_ID: [
|
||||||
{ required: true, message: "挂车车辆不能为空", trigger: "change" },
|
{ required: true, message: "挂车车辆不能为空", trigger: "change" },
|
||||||
]
|
]
|
||||||
|
@ -339,6 +355,9 @@ const fnGetTrailerInfo = async () => {
|
||||||
const FREIGHTTRAILER_ID = form.value.FREIGHTTRAILER_ID;
|
const FREIGHTTRAILER_ID = form.value.FREIGHTTRAILER_ID;
|
||||||
form.value.FREIGHTTRAILER_ID = FREIGHTTRAILER_ID;
|
form.value.FREIGHTTRAILER_ID = FREIGHTTRAILER_ID;
|
||||||
const resData = await getFreightTrailerView({ FREIGHTTRAILER_ID });
|
const resData = await getFreightTrailerView({ FREIGHTTRAILER_ID });
|
||||||
|
form.value.PROVINCE = resData.pd.PROVINCE
|
||||||
|
form.value.CITY = resData.pd.CITY
|
||||||
|
form.value.COUNTY = resData.pd.COUNTY
|
||||||
form.value.PLATE_NUMBER = resData.pd.PLATE_NUMBER;
|
form.value.PLATE_NUMBER = resData.pd.PLATE_NUMBER;
|
||||||
form.value.FRAMES_NUMBER = resData.pd.VIN;
|
form.value.FRAMES_NUMBER = resData.pd.VIN;
|
||||||
form.value.VEHICLE_TYPE = resData.pd.TRAILER_TYPE;
|
form.value.VEHICLE_TYPE = resData.pd.TRAILER_TYPE;
|
||||||
|
|
|
@ -143,23 +143,43 @@
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
<el-form-item label="到期日期" prop="EXPIRE_DATE">
|
<el-form-item label="到期日期" prop="EXPIRE_DATE">
|
||||||
<el-input v-model="form.EXPIRE_DATE" disabled />
|
<el-date-picker
|
||||||
|
v-model="form.EXPIRE_DATE"
|
||||||
|
value-format="YYYY-MM-DD"
|
||||||
|
format="YYYY-MM-DD"
|
||||||
|
type="date"
|
||||||
|
disabled
|
||||||
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-row>
|
<el-row>
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
<el-form-item label="提醒天数" prop="REMINDER_DAY">
|
<el-form-item label="提醒天数" prop="REMINDER_DAY">
|
||||||
<el-input
|
<el-select v-model="form.REMINDER_DAY" @change="fnGetReminderData">
|
||||||
|
<el-option
|
||||||
|
v-for="item in REMIND_DAYS"
|
||||||
|
:key="item.NAME"
|
||||||
|
:label="item.NAME"
|
||||||
|
:value="item.NUM"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
<!-- <el-input
|
||||||
v-model="form.REMINDER_DAY"
|
v-model="form.REMINDER_DAY"
|
||||||
placeholder="请填写提醒天数"
|
placeholder="请填写提醒天数"
|
||||||
@change="fnGetReminderData"
|
@change="fnGetReminderData"
|
||||||
/>
|
/>-->
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
<el-form-item label="提醒日期" prop="REMINDER_DATA">
|
<el-form-item label="提醒日期" prop="REMINDER_DATA">
|
||||||
<el-input v-model="form.REMINDER_DATA" disabled />
|
<el-date-picker
|
||||||
|
v-model="form.REMINDER_DATA"
|
||||||
|
value-format="YYYY-MM-DD"
|
||||||
|
format="YYYY-MM-DD"
|
||||||
|
type="date"
|
||||||
|
disabled
|
||||||
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
|
@ -216,7 +236,7 @@ import { ElMessage } from "element-plus";
|
||||||
import { useRoute, useRouter } from "vue-router";
|
import { useRoute, useRouter } from "vue-router";
|
||||||
import LayoutUpload from "@/components/upload/index.vue";
|
import LayoutUpload from "@/components/upload/index.vue";
|
||||||
import { addingPrefixToFile } from "@/assets/js/utils.js";
|
import { addingPrefixToFile } from "@/assets/js/utils.js";
|
||||||
import { TAXES_PERIOD } from "@/assets/js/constant.js";
|
import { REMIND_DAYS, TAXES_PERIOD } from "@/assets/js/constant.js";
|
||||||
|
|
||||||
const route = useRoute();
|
const route = useRoute();
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
|
|
|
@ -47,6 +47,7 @@
|
||||||
<el-select
|
<el-select
|
||||||
v-model="searchForm.EXPIRE_STATUS"
|
v-model="searchForm.EXPIRE_STATUS"
|
||||||
placeholder="请选择到期状态"
|
placeholder="请选择到期状态"
|
||||||
|
clearable
|
||||||
>
|
>
|
||||||
<el-option label="未到期" value="1"></el-option>
|
<el-option label="未到期" value="1"></el-option>
|
||||||
<el-option label="已到期" value="0"></el-option>
|
<el-option label="已到期" value="0"></el-option>
|
||||||
|
@ -58,12 +59,13 @@
|
||||||
<el-select
|
<el-select
|
||||||
v-model="searchForm.REMINDER_STATUS"
|
v-model="searchForm.REMINDER_STATUS"
|
||||||
placeholder="请选择提醒状态"
|
placeholder="请选择提醒状态"
|
||||||
|
clearable
|
||||||
>
|
>
|
||||||
<el-option
|
<el-option
|
||||||
v-for="item in remindStatusList"
|
v-for="item in REMINDER_STATUS"
|
||||||
:key="item.BIANMA"
|
:key="item.ID"
|
||||||
:label="item.NAME"
|
:label="item.NAME"
|
||||||
:value="item.NAME"
|
:value="item.ID"
|
||||||
/>
|
/>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
@ -184,6 +186,7 @@
|
||||||
import { serialNumber } from "@/assets/js/utils.js";
|
import { serialNumber } from "@/assets/js/utils.js";
|
||||||
import useListData from "@/assets/js/useListData.js";
|
import useListData from "@/assets/js/useListData.js";
|
||||||
import { layoutFnGetRemindStatus } from "@/assets/js/taxation_manage.js";
|
import { layoutFnGetRemindStatus } from "@/assets/js/taxation_manage.js";
|
||||||
|
import {
|
||||||
import {
|
import {
|
||||||
getTaxationManageList,
|
getTaxationManageList,
|
||||||
setTaxatonManageDelete,
|
setTaxatonManageDelete,
|
||||||
|
@ -192,8 +195,8 @@ import { useRouter } from "vue-router";
|
||||||
import useButtonJurisdiction from "@/assets/js/useButtonJurisdiction.js";
|
import useButtonJurisdiction from "@/assets/js/useButtonJurisdiction.js";
|
||||||
import { debounce } from "throttle-debounce";
|
import { debounce } from "throttle-debounce";
|
||||||
import { ElMessage, ElMessageBox } from "element-plus";
|
import { ElMessage, ElMessageBox } from "element-plus";
|
||||||
|
import { EXPIRE_STATUS, REMINDER_STATUS } from "@/assets/js/constant.js";
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
const remindStatusList = await layoutFnGetRemindStatus();
|
|
||||||
const { list, pagination, searchForm, fnGetData, fnResetPagination } =
|
const { list, pagination, searchForm, fnGetData, fnResetPagination } =
|
||||||
useListData(getTaxationManageList, {});
|
useListData(getTaxationManageList, {});
|
||||||
const fnGetDataTransfer = () => {
|
const fnGetDataTransfer = () => {
|
||||||
|
|
|
@ -95,6 +95,12 @@
|
||||||
:label="item.USERNAME"
|
:label="item.USERNAME"
|
||||||
/>
|
/>
|
||||||
</el-select>
|
</el-select>
|
||||||
|
<span
|
||||||
|
v-if="data.recordingPersonnelList.length === 0"
|
||||||
|
class="text-red"
|
||||||
|
>
|
||||||
|
*请到【企业用户管理】->【签字人员管理】菜单中配置
|
||||||
|
</span>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
|
@ -111,6 +117,12 @@
|
||||||
:label="item.USERNAME"
|
:label="item.USERNAME"
|
||||||
/>
|
/>
|
||||||
</el-select>
|
</el-select>
|
||||||
|
<span
|
||||||
|
v-if="data.recordingPersonnelList.length === 0"
|
||||||
|
class="text-red"
|
||||||
|
>
|
||||||
|
*请到【企业用户管理】->【签字人员管理】菜单中配置
|
||||||
|
</span>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
|
@ -127,6 +139,12 @@
|
||||||
:label="item.USERNAME"
|
:label="item.USERNAME"
|
||||||
/>
|
/>
|
||||||
</el-select>
|
</el-select>
|
||||||
|
<span
|
||||||
|
v-if="data.recordingPersonnelList.length === 0"
|
||||||
|
class="text-red"
|
||||||
|
>
|
||||||
|
*请到【企业用户管理】->【签字人员管理】菜单中配置
|
||||||
|
</span>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
|
|
|
@ -99,4 +99,23 @@ const fnExamDetails = async (STAGEEXAM_ID) => {
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped lang="scss"></style>
|
<style scoped lang="scss">
|
||||||
|
:deep {
|
||||||
|
.el-radio-group {
|
||||||
|
width: 100%;
|
||||||
|
justify-content: space-between;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
}
|
||||||
|
.el-radio-group .el-radio {
|
||||||
|
width: 25%;
|
||||||
|
margin-right: 0;
|
||||||
|
height: auto;
|
||||||
|
min-height: 30px;
|
||||||
|
}
|
||||||
|
.el-radio__input.is-disabled + span.el-radio__label {
|
||||||
|
white-space: break-spaces;
|
||||||
|
word-break: break-all;
|
||||||
|
line-height: 20px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
|
@ -29,14 +29,6 @@
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="6">
|
|
||||||
<el-form-item label="行业类型" prop="INDUSTRY_END_ID">
|
|
||||||
<layout-learning-train-type
|
|
||||||
v-model="searchForm.INDUSTRY_END_ID"
|
|
||||||
type="industryType"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
<el-form-item label="岗位类型" prop="POSTTYPE">
|
<el-form-item label="岗位类型" prop="POSTTYPE">
|
||||||
<layout-learning-train-type
|
<layout-learning-train-type
|
||||||
|
|
|
@ -217,8 +217,8 @@ const formRef = ref(null);
|
||||||
const data = reactive({
|
const data = reactive({
|
||||||
form: {
|
form: {
|
||||||
EXAMNAME: "",
|
EXAMNAME: "",
|
||||||
EXAMSCORE: 0,
|
EXAMSCORE: 100,
|
||||||
PASSSCORE: 0,
|
PASSSCORE: 60,
|
||||||
fileList: [],
|
fileList: [],
|
||||||
},
|
},
|
||||||
addOrEditDialog: {
|
addOrEditDialog: {
|
||||||
|
|
|
@ -294,4 +294,22 @@ const fnSubmit = debounce(
|
||||||
flex: 1;
|
flex: 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
:deep {
|
||||||
|
.el-radio-group {
|
||||||
|
width: 100%;
|
||||||
|
justify-content: space-between;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
}
|
||||||
|
.el-radio-group .el-radio {
|
||||||
|
width: 25%;
|
||||||
|
margin-right: 0;
|
||||||
|
height: auto;
|
||||||
|
min-height: 30px;
|
||||||
|
}
|
||||||
|
.el-radio__input.is-disabled + span.el-radio__label {
|
||||||
|
white-space: break-spaces;
|
||||||
|
word-break: break-all;
|
||||||
|
line-height: 20px;
|
||||||
|
}
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
@ -12,6 +12,11 @@
|
||||||
<el-input v-model="searchForm.STUDENT_NAME" />
|
<el-input v-model="searchForm.STUDENT_NAME" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
<el-col :span="6">
|
||||||
|
<el-form-item label="身份证号" prop="USER_ID_CARD">
|
||||||
|
<el-input v-model="searchForm.USER_ID_CARD" />
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
<el-form-item label="班级编码" prop="CODE">
|
<el-form-item label="班级编码" prop="CODE">
|
||||||
<el-input v-model="searchForm.CODE" />
|
<el-input v-model="searchForm.CODE" />
|
||||||
|
|
|
@ -25,6 +25,14 @@
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
<el-col :span="6">
|
||||||
|
<el-form-item label="行业类型" prop="INDUSTRY_END_ID">
|
||||||
|
<layout-learning-train-type
|
||||||
|
v-model="searchForm.INDUSTRY_END_ID"
|
||||||
|
type="industryType"
|
||||||
|
/>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
<el-form-item label="培训类型" prop="TRAINTYPE">
|
<el-form-item label="培训类型" prop="TRAINTYPE">
|
||||||
<layout-learning-train-type
|
<layout-learning-train-type
|
||||||
|
@ -37,14 +45,6 @@
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="6">
|
|
||||||
<el-form-item label="行业类型" prop="INDUSTRY_END_ID">
|
|
||||||
<layout-learning-train-type
|
|
||||||
v-model="searchForm.INDUSTRY_END_ID"
|
|
||||||
type="industryType"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
<el-form-item label="岗位类型" prop="POSTTYPE">
|
<el-form-item label="岗位类型" prop="POSTTYPE">
|
||||||
<layout-learning-train-type
|
<layout-learning-train-type
|
||||||
|
@ -92,13 +92,14 @@
|
||||||
show-overflow-tooltip
|
show-overflow-tooltip
|
||||||
/>
|
/>
|
||||||
<el-table-column label="上传时间" prop="CREATTIME" width="150" />
|
<el-table-column label="上传时间" prop="CREATTIME" width="150" />
|
||||||
<el-table-column label="培训类型" prop="TRAININGTYPE_NAME" />
|
|
||||||
<el-table-column label="行业类型">
|
<el-table-column label="行业类型">
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
{{ row.INDUSTRY_END_NAME || row.INDUSTRY_ALL_NAME }}
|
{{ row.INDUSTRY_END_NAME || row.INDUSTRY_ALL_NAME }}
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
<el-table-column label="培训类型" prop="TRAININGTYPE_NAME" />
|
||||||
<el-table-column label="岗位类型" prop="POSTTYPE_NAME" />
|
<el-table-column label="岗位类型" prop="POSTTYPE_NAME" />
|
||||||
|
<el-table-column label="培训级别" prop="TRAINLEVEL_NAME" />
|
||||||
<el-table-column label="课件数" prop="COURSEWARECOUNT" width="100" />
|
<el-table-column label="课件数" prop="COURSEWARECOUNT" width="100" />
|
||||||
<el-table-column label="课件时长" width="100">
|
<el-table-column label="课件时长" width="100">
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
|
|
|
@ -89,4 +89,22 @@ defineProps({
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
:deep {
|
||||||
|
.el-radio-group {
|
||||||
|
width: 100%;
|
||||||
|
justify-content: space-between;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
}
|
||||||
|
.el-radio-group .el-radio {
|
||||||
|
width: 25%;
|
||||||
|
margin-right: 0;
|
||||||
|
height: auto;
|
||||||
|
min-height: 30px;
|
||||||
|
}
|
||||||
|
.el-radio__input.is-disabled + span.el-radio__label {
|
||||||
|
white-space: break-spaces;
|
||||||
|
word-break: break-all;
|
||||||
|
line-height: 20px;
|
||||||
|
}
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
@ -12,6 +12,14 @@
|
||||||
<el-input v-model="searchForm.KEYWORDS" />
|
<el-input v-model="searchForm.KEYWORDS" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
<el-col :span="5">
|
||||||
|
<el-form-item label="行业类型" prop="INDUSTRY_END_ID">
|
||||||
|
<layout-learning-train-type
|
||||||
|
v-model="searchForm.INDUSTRY_END_ID"
|
||||||
|
type="industryType"
|
||||||
|
/>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
<el-col :span="5">
|
<el-col :span="5">
|
||||||
<el-form-item label="培训类型" prop="TRAINTYPE">
|
<el-form-item label="培训类型" prop="TRAINTYPE">
|
||||||
<layout-learning-train-type
|
<layout-learning-train-type
|
||||||
|
@ -21,14 +29,6 @@
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="5">
|
|
||||||
<el-form-item label="行业类型" prop="INDUSTRY_END_ID">
|
|
||||||
<layout-learning-train-type
|
|
||||||
v-model="searchForm.INDUSTRY_END_ID"
|
|
||||||
type="industryType"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="5">
|
<el-col :span="5">
|
||||||
<el-form-item label="岗位类型" prop="POSTTYPE">
|
<el-form-item label="岗位类型" prop="POSTTYPE">
|
||||||
<layout-learning-train-type
|
<layout-learning-train-type
|
||||||
|
@ -66,8 +66,8 @@
|
||||||
show-overflow-tooltip
|
show-overflow-tooltip
|
||||||
/>
|
/>
|
||||||
<el-table-column label="上传时间" prop="CREATTIME" width="150" />
|
<el-table-column label="上传时间" prop="CREATTIME" width="150" />
|
||||||
<el-table-column label="培训类型" prop="TRAININGTYPE_NAME" />
|
|
||||||
<el-table-column label="行业类型" prop="INDUSTRY_END_NAME" />
|
<el-table-column label="行业类型" prop="INDUSTRY_END_NAME" />
|
||||||
|
<el-table-column label="培训类型" prop="TRAININGTYPE_NAME" />
|
||||||
<el-table-column label="岗位类型" prop="POSTTYPE_NAME" />
|
<el-table-column label="岗位类型" prop="POSTTYPE_NAME" />
|
||||||
<el-table-column label="培训教师" prop="TEACHERNAME" />
|
<el-table-column label="培训教师" prop="TEACHERNAME" />
|
||||||
<el-table-column label="学时" prop="CLASSHOUR" width="100" />
|
<el-table-column label="学时" prop="CLASSHOUR" width="100" />
|
||||||
|
|
Loading…
Reference in New Issue