BUG优化

dev
xiepeng 2024-05-29 14:06:05 +08:00
parent 7c7f5fda26
commit def2819255
14 changed files with 166 additions and 36 deletions

View File

@ -77,6 +77,9 @@ export const findTrailerByPlateNumber = (params) =>
export const getChoiceTrailerList = (params) => export const getChoiceTrailerList = (params) =>
post("/taxationmanage/choicetrailerlist", params); // 车船税添加选择挂车 post("/taxationmanage/choicetrailerlist", params); // 车船税添加选择挂车
export const getAllVehicleList = (params) =>
post("/freightTrailer/getAllVehicleList", params); // 获取营运车辆和货运挂车所有车辆
const getCorpList = (params) => post("/freightTrailer/corpList", params); const getCorpList = (params) => post("/freightTrailer/corpList", params);
export const getFreightTrailerCorpList = async () => { export const getFreightTrailerCorpList = async () => {
const resData = await getCorpList(); const resData = await getCorpList();

View File

@ -410,6 +410,9 @@ const rules = {
PRACTITIONER: [ PRACTITIONER: [
{ required: true, message: "请选择从业人员", trigger: "change" }, { required: true, message: "请选择从业人员", trigger: "change" },
], ],
DEPARTMENT_ID: [
{ required: true, message: "请选择部门", trigger: "change"}
]
}; };
const data = reactive({ const data = reactive({
@ -501,6 +504,7 @@ const changeCONFIRMINGPERSON = (contactPersonId) => {
const fnGetUnitsList = async () => { const fnGetUnitsList = async () => {
const resData = await getUserPersonTypeListAll({}); const resData = await getUserPersonTypeListAll({});
data.userTypeList = resData.userList; data.userTypeList = resData.userList;
data.userTypeList = data.userTypeList.filter(( item ) => item.APPLY_STATUS === '1')
}; };
fnGetUnitsList(); fnGetUnitsList();

View File

@ -86,7 +86,92 @@
{{ data.info.EMAIL }} {{ data.info.EMAIL }}
</el-descriptions-item> </el-descriptions-item>
</el-descriptions> </el-descriptions>
<div v-for="(item, index) in data.certificateList" :key="index"> <el-divider content-position="left">身份证</el-divider>
<el-descriptions :column="2" border>
<el-descriptions-item label="身份证(正面)">
<img
v-if="data.idCard.ID_PHOTO_FRONT !== null"
v-viewer
:src="data.idCard.ID_PHOTO_FRONT"
width="100"
height="100"
class="ml-10"
/>
</el-descriptions-item>
<el-descriptions-item label="身份证(背面)">
<img
v-if="data.idCard.ID_PHOTO_BACK !== null"
v-viewer
:src="data.idCard.ID_PHOTO_BACK"
width="100"
height="100"
class="ml-10"
/>
</el-descriptions-item>
<el-descriptions-item label = "住址">
{{ data.idCard.ID_ADDRESS }}
</el-descriptions-item>
<el-descriptions-item label = "证件号码">
{{ data.idCard.ID_NO }}
</el-descriptions-item>
<el-descriptions-item label = "签发机关">
{{ data.idCard.ID_ORGAN }}
</el-descriptions-item>
<el-descriptions-item label = "有效期">
{{ data.idCard.ID_VALIDITY_START + "至" + data.idCard.ID_VALIDITY_END }}
</el-descriptions-item>
</el-descriptions>
<el-divider content-position="left">驾驶证</el-divider>
<el-descriptions :column="1" border>
<el-descriptions-item label="驾驶证">
<img
v-if="data.drivingLicence.ID_PHOTO_FRONT !== null"
v-viewer
:src="data.drivingLicence.ID_PHOTO_FRONT"
width="100"
height="100"
class="ml-10"
/>
</el-descriptions-item>
<el-descriptions-item label = "证件号码">
{{ data.drivingLicence.ID_NO }}
</el-descriptions-item>
<el-descriptions-item label = "准驾车型">
{{ data.drivingLicence.ALLOW_QUALIFICATION }}
</el-descriptions-item>
<el-descriptions-item label = "签发机关">
{{ data.drivingLicence.ID_ORGAN }}
</el-descriptions-item>
<el-descriptions-item label = "有效期">
{{ data.drivingLicence.ID_VALIDITY_START + "至" + data.drivingLicence.ID_VALIDITY_END }}
</el-descriptions-item>
</el-descriptions>
<el-divider content-position="left">道路运输从业资格证</el-divider>
<el-descriptions :column="1" border>
<el-descriptions-item label="道路运输从业资格证">
<img
v-if="data.qualificationCertificate.ID_PHOTO_FRONT !== null"
v-viewer
:src="data.qualificationCertificate.ID_PHOTO_FRONT"
width="100"
height="100"
class="ml-10"
/>
</el-descriptions-item>
<el-descriptions-item label = "证件号码">
{{ data.qualificationCertificate.ID_NO }}
</el-descriptions-item>
<el-descriptions-item label = "从业资格类别">
{{ data.qualificationCertificate.ALLOW_QUALIFICATION }}
</el-descriptions-item>
<el-descriptions-item label = "签发机关">
{{ data.qualificationCertificate.ID_ORGAN }}
</el-descriptions-item>
<el-descriptions-item label = "有效期">
{{ data.qualificationCertificate.ID_VALIDITY_START + "至" + data.qualificationCertificate.ID_VALIDITY_END }}
</el-descriptions-item>
</el-descriptions>
<!-- <div v-for="(item, index) in data.certificateList" :key="index">
<el-divider content-position="left"> <el-divider content-position="left">
{{ {{
item.CERTIFICATE_CATEGORY === "1" item.CERTIFICATE_CATEGORY === "1"
@ -184,7 +269,7 @@
{{ item.ID_VALIDITY_START + "至" + item.ID_VALIDITY_END }} {{ item.ID_VALIDITY_START + "至" + item.ID_VALIDITY_END }}
</el-descriptions-item> </el-descriptions-item>
</el-descriptions> </el-descriptions>
</div> </div>-->
<div class="tc mt-10"> <div class="tc mt-10">
<el-button type="primary" @click="router.back"> </el-button> <el-button type="primary" @click="router.back"> </el-button>
</div> </div>
@ -204,6 +289,9 @@ const data = reactive({
certificateList: [], certificateList: [],
statusInfo: {}, statusInfo: {},
dispose: "", dispose: "",
idCard: [],
drivingLicence: [],
qualificationCertificate: []
}); });
const fnGetData = async () => { const fnGetData = async () => {
if (!USER_ID) return; if (!USER_ID) return;
@ -233,6 +321,16 @@ const fnGetData = async () => {
item.ALLOW_QUALIFICATION = null; item.ALLOW_QUALIFICATION = null;
} }
}); });
data.certificateList.forEach(( item ) => {
if(item.CERTIFICATE_CATEGORY === '1') {
data.idCard = item;
}else if(item.CERTIFICATE_CATEGORY === '2') {
data.drivingLicence = item
}else if(item.CERTIFICATE_CATEGORY === '3') {
data.qualificationCertificate = item
}
})
console.log("1111",data.certificateList);
if ( if (
data.statusInfo.APPLY_TYPE === "1" || data.statusInfo.APPLY_TYPE === "1" ||
data.statusInfo.APPLY_TYPE === "3" data.statusInfo.APPLY_TYPE === "3"

View File

@ -202,6 +202,7 @@ const { list, pagination, searchForm, fnGetData, fnResetPagination } =
// APPLY_TYPE: "1-3", // APPLY_TYPE: "1-3",
}, },
}); });
console.log(await getPractitionerList());
const data = reactive({ const data = reactive({
personnelTypeList: [], personnelTypeList: [],
reviewDialog: { reviewDialog: {

View File

@ -16,14 +16,14 @@
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6"> <!-- <el-col :span="6">
<el-form-item label="完成状态" prop="COMPLETIONSTATUS"> <el-form-item label="完成状态" prop="COMPLETIONSTATUS">
<el-select v-model="searchForm.COMPLETIONSTATUS" clearable> <el-select v-model="searchForm.COMPLETIONSTATUS" clearable>
<el-option label="已上传" :value="1" /> <el-option label="已上传" :value="1" />
<el-option label="未上传" :value="0" /> <el-option label="未上传" :value="0" />
</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="VALIDSTATUS"> <el-form-item label="有效状态" prop="VALIDSTATUS">
<el-select v-model="searchForm.VALIDSTATUS" clearable> <el-select v-model="searchForm.VALIDSTATUS" clearable>

View File

@ -16,14 +16,14 @@
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6"> <!-- <el-col :span="6">
<el-form-item label="完成状态" prop="COMPLETIONSTATUS"> <el-form-item label="完成状态" prop="COMPLETIONSTATUS">
<el-select v-model="searchForm.COMPLETIONSTATUS" clearable> <el-select v-model="searchForm.COMPLETIONSTATUS" clearable>
<el-option label="已上传" :value="1" /> <el-option label="已上传" :value="1" />
<el-option label="未上传" :value="0" /> <el-option label="未上传" :value="0" />
</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="VALIDSTATUS"> <el-form-item label="有效状态" prop="VALIDSTATUS">
<el-select v-model="searchForm.VALIDSTATUS" clearable> <el-select v-model="searchForm.VALIDSTATUS" clearable>

View File

@ -411,6 +411,8 @@ const form = ref({
}); });
const info = ref({}); const info = ref({});
const fnEditVehicleModel = async () => { const fnEditVehicleModel = async () => {
form.value.NOW_OWNERS = '';
form.value.NOW_OWNERS_NUMBER = '';
form.value.VEHICLE_PLATE_NUMBER = null; form.value.VEHICLE_PLATE_NUMBER = null;
form.value.VEHICLE = {}; form.value.VEHICLE = {};
if (form.value.ASSIGNED_VEHICLE_MODEL === "运输车辆") { if (form.value.ASSIGNED_VEHICLE_MODEL === "运输车辆") {
@ -422,6 +424,8 @@ const fnEditVehicleModel = async () => {
} }
}; };
const fnGetVehicleInfo = async () => { const fnGetVehicleInfo = async () => {
form.value.NOW_OWNERS = '';
form.value.NOW_OWNERS_NUMBER = '';
if (form.value.ASSIGNED_VEHICLE_MODEL === "运输车辆") { if (form.value.ASSIGNED_VEHICLE_MODEL === "运输车辆") {
for (let i = 0; i < form.value.OPERATIONVEHICLELIST.length; i++) { for (let i = 0; i < form.value.OPERATIONVEHICLELIST.length; i++) {
if ( if (

View File

@ -42,10 +42,10 @@
placeholder="请选择文化水平" placeholder="请选择文化水平"
> >
<el-option <el-option
v-for="item in EDUCATIONALMENU" v-for="item in data.degreeOfEducationList"
:key="item.id" :key="item.DICTIONARIES_ID"
:label="item.id" :label="item.NAME"
:value="item.name" :value="item.DICTIONARIES_ID"
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
@ -402,7 +402,7 @@
<script setup> <script setup>
import { onMounted, reactive, ref, toRaw } from "vue"; import { onMounted, reactive, ref, toRaw } from "vue";
import { ACCIDENTNATUREMENU, EDUCATIONALMENU } from "@/assets/js/constant.js"; import { ACCIDENTNATUREMENU } from "@/assets/js/constant.js";
import LayoutUpload from "@/components/upload/index.vue"; import LayoutUpload from "@/components/upload/index.vue";
import useFormValidate from "@/assets/js/useFormValidate.js"; import useFormValidate from "@/assets/js/useFormValidate.js";
import { ElMessage } from "element-plus"; import { ElMessage } from "element-plus";
@ -414,6 +414,7 @@ import {
} from "@/request/production_accident.js"; } from "@/request/production_accident.js";
import { addingPrefixFile } from "@/assets/js/utils.js"; import { addingPrefixFile } from "@/assets/js/utils.js";
import { getPractitionerSelectList } from "@/request/user_practitioner.js"; import { getPractitionerSelectList } from "@/request/user_practitioner.js";
import { layoutFnGetDegreeOfEducation } from "@/assets/js/data_dictionary.js";
// //
const route = useRoute(); const route = useRoute();
@ -552,6 +553,12 @@ const data = reactive({
}, },
}); });
const fnGetLevels = async () => {
const { value: degreeOfEducationList } = await layoutFnGetDegreeOfEducation();
data.degreeOfEducationList = degreeOfEducationList;
}
fnGetLevels();
onMounted(() => { onMounted(() => {
isEditMode.value = route.query.mode === "edit"; isEditMode.value = route.query.mode === "edit";
ACCIDENTINVESTIGATION_ID.value = route.query.ACCIDENTINVESTIGATION_ID || ""; ACCIDENTINVESTIGATION_ID.value = route.query.ACCIDENTINVESTIGATION_ID || "";

View File

@ -42,10 +42,10 @@
placeholder="请选择文化水平" placeholder="请选择文化水平"
> >
<el-option <el-option
v-for="item in EDUCATIONALMENU" v-for="item in data.degreeOfEducationList"
:key="item.id" :key="item.DICTIONARIES_ID"
:label="item.id" :label="item.NAME"
:value="item.name" :value="item.DICTIONARIES_ID"
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
@ -402,7 +402,7 @@
<script setup> <script setup>
import { onMounted, reactive, ref, toRaw } from "vue"; import { onMounted, reactive, ref, toRaw } from "vue";
import { ACCIDENTNATUREMENU, EDUCATIONALMENU } from "@/assets/js/constant.js"; import { ACCIDENTNATUREMENU } from "@/assets/js/constant.js";
import LayoutUpload from "@/components/upload/index.vue"; import LayoutUpload from "@/components/upload/index.vue";
import useFormValidate from "@/assets/js/useFormValidate.js"; import useFormValidate from "@/assets/js/useFormValidate.js";
import { ElMessage } from "element-plus"; import { ElMessage } from "element-plus";
@ -414,6 +414,7 @@ import {
} from "@/request/production_accident.js"; } from "@/request/production_accident.js";
import { addingPrefixFile } from "@/assets/js/utils.js"; import { addingPrefixFile } from "@/assets/js/utils.js";
import { getPractitionerSelectList } from "@/request/user_practitioner.js"; import { getPractitionerSelectList } from "@/request/user_practitioner.js";
import { layoutFnGetDegreeOfEducation } from "@/assets/js/data_dictionary.js";
// //
const route = useRoute(); const route = useRoute();
@ -566,6 +567,13 @@ onMounted(() => {
} }
}); });
const fnGetLevels = async () => {
const { value: degreeOfEducationList } = await layoutFnGetDegreeOfEducation();
data.degreeOfEducationList = degreeOfEducationList;
}
fnGetLevels();
const fnGetData = async () => { const fnGetData = async () => {
const ACCIDENTINVESTIGATION_ID = route.query.ACCIDENTINVESTIGATION_ID; const ACCIDENTINVESTIGATION_ID = route.query.ACCIDENTINVESTIGATION_ID;
if (!ACCIDENTINVESTIGATION_ID) return; if (!ACCIDENTINVESTIGATION_ID) return;

View File

@ -213,7 +213,6 @@
</template> </template>
<script setup> <script setup>
import { getUserListAll } from "@/request/data_dictionary.js";
import LayoutUpload from "@/components/upload/index.vue"; import LayoutUpload from "@/components/upload/index.vue";
import { ref, reactive } from "vue"; import { ref, reactive } from "vue";
import { debounce } from "throttle-debounce"; import { debounce } from "throttle-debounce";
@ -230,6 +229,7 @@ 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"; import { REMIND_DAYS } from "@/assets/js/constant.js";
import { getUserPersonTypeListAll } from "@/request/waybill_registration.js";
const route = useRoute(); const route = useRoute();
const router = useRouter(); const router = useRouter();
@ -318,8 +318,9 @@ const getRemiderDate = (val) => {
} }
}; };
const getUserList = async () => { const getUserList = async () => {
const resData = await getUserListAll(); const resData = await getUserPersonTypeListAll({});
data.userList = resData.userList; data.userList = resData.userList;
data.userList = data.userList.filter(( item ) => item.APPLY_STATUS === '1')
}; };
getUserList(); getUserList();
const getVehicle = async (event) => { const getVehicle = async (event) => {

View File

@ -29,10 +29,10 @@
placeholder="请选择车辆" placeholder="请选择车辆"
> >
<el-option <el-option
v-for="item in TRUCKMENU" v-for="item in data.vehicleList"
:key="item.id" :key="item.PLATE_NUMBER"
:label="item.id" :label="item.PLATE_NUMBER"
:value="item.name" :value="item.PLATE_NUMBER"
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
@ -108,7 +108,7 @@
<script setup> <script setup>
import { onMounted, reactive, ref, toRaw } from "vue"; import { onMounted, reactive, ref, toRaw } from "vue";
import { PENALTYMETHODMENU, TRUCKMENU } from "@/assets/js/constant.js"; import { PENALTYMETHODMENU } from "@/assets/js/constant.js";
import LayoutUpload from "@/components/upload/index.vue"; import LayoutUpload from "@/components/upload/index.vue";
import useFormValidate from "@/assets/js/useFormValidate.js"; import useFormValidate from "@/assets/js/useFormValidate.js";
import { ElMessage } from "element-plus"; import { ElMessage } from "element-plus";
@ -117,6 +117,9 @@ import {
addViolationRegistrationView, addViolationRegistrationView,
editViolationRegistration, editViolationRegistration,
} from "@/request/violation_registration.js"; } from "@/request/violation_registration.js";
import {
getAllVehicleList
} from "@/request/enterprise_management.js"
import { getPractitionerSelectList } from "@/request/user_practitioner.js"; import { getPractitionerSelectList } from "@/request/user_practitioner.js";
const router = useRouter(); const router = useRouter();
@ -154,6 +157,13 @@ onMounted(async () => {
}); */ }); */
}); });
const fnGetAllVehicle = async () => {
const resData = await getAllVehicleList();
data.vehicleList = resData.varList
console.log(data.vehicleList);
}
fnGetAllVehicle();
const fnGetUnitsList = async () => { const fnGetUnitsList = async () => {
const resData = await getPractitionerSelectList({ const resData = await getPractitionerSelectList({
PARENT_ID: "0b62f92b0b624aab8e89a77304a64d5e", PARENT_ID: "0b62f92b0b624aab8e89a77304a64d5e",
@ -174,6 +184,7 @@ const data = reactive({
PENALTYREGISTRANT: "", PENALTYREGISTRANT: "",
fileList: [], fileList: [],
}, },
vehicleList: []
}); });
const fnSubmit = async () => { const fnSubmit = async () => {

View File

@ -50,10 +50,7 @@
{{ serialNumber(pagination, $index) }} {{ serialNumber(pagination, $index) }}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="运输车辆" width="250"> <el-table-column label="运输车辆" width="250" prop="TRANSPORTVEHICLE">
<template #default="{ row }">
{{ convertTransportVehicle(row.TRANSPORTVEHICLE) }}
</template>
</el-table-column> </el-table-column>
<el-table-column prop="NAME" label="从业人员" width="250" /> <el-table-column prop="NAME" label="从业人员" width="250" />
<el-table-column prop="PHONE" label="联系电话" /> <el-table-column prop="PHONE" label="联系电话" />
@ -110,7 +107,7 @@
<script setup> <script setup>
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 { PENALTYMETHODMENU, TRUCKMENU } from "@/assets/js/constant.js"; import { PENALTYMETHODMENU } from "@/assets/js/constant.js";
import { reactive } from "vue"; import { reactive } from "vue";
import { ElMessage, ElMessageBox } from "element-plus"; import { ElMessage, ElMessageBox } from "element-plus";
import { useRouter } from "vue-router"; import { useRouter } from "vue-router";
@ -121,10 +118,6 @@ import {
import { getUserSelectListAll } from "@/request/user_practitioner.js"; import { getUserSelectListAll } from "@/request/user_practitioner.js";
const router = useRouter(); const router = useRouter();
const convertTransportVehicle = (name) => {
const vehicle = TRUCKMENU.find((item) => item.name === name);
return vehicle ? vehicle.id : "未知车牌号";
};
const convertPENALTYMETHOD = (name) => { const convertPENALTYMETHOD = (name) => {
const vehicle = PENALTYMETHODMENU.find((item) => item.name === name); const vehicle = PENALTYMETHODMENU.find((item) => item.name === name);
return vehicle ? vehicle.id : "未知处罚方式"; return vehicle ? vehicle.id : "未知处罚方式";

View File

@ -16,14 +16,14 @@
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6"> <!-- <el-col :span="6">
<el-form-item label="完成状态" prop="COMPLETIONSTATUS"> <el-form-item label="完成状态" prop="COMPLETIONSTATUS">
<el-select v-model="searchForm.COMPLETIONSTATUS" clearable> <el-select v-model="searchForm.COMPLETIONSTATUS" clearable>
<el-option label="已上传" :value="1" /> <el-option label="已上传" :value="1" />
<el-option label="未上传" :value="0" /> <el-option label="未上传" :value="0" />
</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="VALIDSTATUS"> <el-form-item label="有效状态" prop="VALIDSTATUS">
<el-select v-model="searchForm.VALIDSTATUS" clearable> <el-select v-model="searchForm.VALIDSTATUS" clearable>

View File

@ -16,14 +16,14 @@
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6"> <!-- <el-col :span="6">
<el-form-item label="完成状态" prop="COMPLETIONSTATUS"> <el-form-item label="完成状态" prop="COMPLETIONSTATUS">
<el-select v-model="searchForm.COMPLETIONSTATUS" clearable> <el-select v-model="searchForm.COMPLETIONSTATUS" clearable>
<el-option label="已上传" :value="1" /> <el-option label="已上传" :value="1" />
<el-option label="未上传" :value="0" /> <el-option label="未上传" :value="0" />
</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="VALIDSTATUS"> <el-form-item label="有效状态" prop="VALIDSTATUS">
<el-select v-model="searchForm.VALIDSTATUS" clearable> <el-select v-model="searchForm.VALIDSTATUS" clearable>