Merge remote-tracking branch 'origin/dev' into dev

# Conflicts:
#	src/assets/js/constant.js
dev
xiepeng 2024-03-26 18:04:58 +08:00
commit 25680c9e26
51 changed files with 752 additions and 499 deletions

2
.env
View File

@ -1,4 +1,4 @@
VITE_BASE_URL=http://192.168.0.55:8093/ VITE_BASE_URL=http://192.168.0.49:8093/
VITE_PROXY=/api/ VITE_PROXY=/api/
VITE_FILE_URL=https://file.zcloudchina.com/YTHFile VITE_FILE_URL=https://file.zcloudchina.com/YTHFile
VITE_TEMPLATE_URL=https://qaaq.qhdsafety.com/file/ VITE_TEMPLATE_URL=https://qaaq.qhdsafety.com/file/

View File

@ -0,0 +1,7 @@
VITE_BASE_URL=http://192.168.0.31:7082/integrated_traffic/
VITE_PROXY=/api/
VITE_FILE_URL=https://file.zcloudchina.com/YTHFile
VITE_TEMPLATE_URL=https://qaaq.qhdsafety.com/file/
VITE_ON_LINE_WEB_SOCKET_URL=wss://qaaq.qhdsafety.com/zxwebsocket/
VITE_LEARNING_WEB_SOCKET_URL=wss://qaaq.qhdsafety.com/websocket/

View File

@ -49,6 +49,24 @@ export const LOCATIONTYPEMENU = [
{ id: "目的地", name: "2" }, { id: "目的地", name: "2" },
]; ];
export const PENALTYMETHODMENU = [
{ id: "罚款", name: "1" },
{ id: "罚钱", name: "2" },
{ id: "赔礼道歉", name: "3" },
];
export const EDUCATIONALMENU = [
{ id: "专科", name: "1" },
{ id: "本科", name: "2" },
{ id: "博士", name: "3" },
];
export const ACCIDENTNATUREMENU = [
{ id: "火灾", name: "1" },
{ id: "车祸", name: "2" },
{ id: "天灾", name: "3" },
];
export const PRINT_STYLE = export const PRINT_STYLE =
'<style type="text/css" media="print">\n' + '<style type="text/css" media="print">\n' +
" @page { size: landscape; }\n" + " @page { size: landscape; }\n" +
@ -66,6 +84,12 @@ export const OPERATING_VEHICLE_TYPE_LIST = [
{ ID: "2", NAME: "货运挂车" }, { ID: "2", NAME: "货运挂车" },
]; ];
export const INSURANCEMENU = [
// 运营车型
{ ID: "1", NAME: "太平洋保险公司" },
{ ID: "2", NAME: "中国人保" },
];
export const DUE_STATUS_LIST = [ export const DUE_STATUS_LIST = [
// 到期状态 // 到期状态
{ ID: "1", NAME: "未到期" }, { ID: "1", NAME: "未到期" },
@ -94,9 +118,14 @@ export const TAXES_PERIOD = [
export const EXPIRE_STATUS = [ export const EXPIRE_STATUS = [
// 到期状态 // 到期状态
{ ID: "1", NAME: "未到期" }, { ID: "1", NAME: "未到期" },
{ ID: "0", NAME: "已到期" }, { ID: "0", NAME: "已到期" },
]; ];
export const MAINTENANCE_LEVEL_LIST = [
// 维保等级
{ ID: "1", NAME: "一级维保" },
{ ID: "2", NAME: "二级维保" },
];
export const NETWORK_STATE = [ export const NETWORK_STATE = [
// 入网状态 // 入网状态
{ ID: "0", NAME: "已入网" }, { ID: "0", NAME: "已入网" },

View File

@ -15,6 +15,7 @@
<el-select <el-select
v-model="data.form.CUSTOMERTYPE" v-model="data.form.CUSTOMERTYPE"
placeholder="请选择客户类型" placeholder="请选择客户类型"
clearable
> >
<el-option <el-option
v-for="item in CUSTOMERTYPEMENU" v-for="item in CUSTOMERTYPEMENU"
@ -30,6 +31,7 @@
<el-input <el-input
v-model="data.form.CUSTOMERNAME" v-model="data.form.CUSTOMERNAME"
placeholder="请输入客户名称" placeholder="请输入客户名称"
clearable
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -50,7 +52,11 @@
:label="'联系人' + (index + 1)" :label="'联系人' + (index + 1)"
:prop="`contacts.${index}.CONTACT`" :prop="`contacts.${index}.CONTACT`"
> >
<el-input v-model="contact.CONTACT" placeholder="请输入联系人" /> <el-input
v-model="contact.CONTACT"
placeholder="请输入联系人"
clearable
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
@ -61,6 +67,7 @@
<el-input <el-input
v-model="contact.CONTACTPHONE" v-model="contact.CONTACTPHONE"
placeholder="请输入联系电话" placeholder="请输入联系电话"
clearable
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -72,6 +79,7 @@
<el-input <el-input
v-model="contact.CUSTOMERADDRESS" v-model="contact.CUSTOMERADDRESS"
placeholder="请输入客户地址" placeholder="请输入客户地址"
clearable
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>

View File

@ -9,7 +9,7 @@
<el-row> <el-row>
<el-col :span="6"> <el-col :span="6">
<el-form-item label="客户类型" prop="CUSTOMERTYPE"> <el-form-item label="客户类型" prop="CUSTOMERTYPE">
<el-select v-model="searchForm.CUSTOMERTYPE"> <el-select v-model="searchForm.CUSTOMERTYPE" clearable>
<el-option label="委托方" :value="1" /> <el-option label="委托方" :value="1" />
<el-option label="确认方" :value="2" /> <el-option label="确认方" :value="2" />
</el-select> </el-select>
@ -17,7 +17,7 @@
</el-col> </el-col>
<el-col :span="6"> <el-col :span="6">
<el-form-item label="运输企业" prop="TRANSPORTATIONCOMPANY"> <el-form-item label="运输企业" prop="TRANSPORTATIONCOMPANY">
<el-select v-model="searchForm.TRANSPORTATIONCOMPANY"> <el-select v-model="searchForm.TRANSPORTATIONCOMPANY" clearable>
<el-option <el-option
v-for="item in data.unitsList" v-for="item in data.unitsList"
:key="item.CORPINFO_ID" :key="item.CORPINFO_ID"
@ -73,7 +73,7 @@
<el-button <el-button
text text
link link
type="primary" type="danger"
@click="deleteItem(row.CUSTOMERMANAGEMENT_ID)" @click="deleteItem(row.CUSTOMERMANAGEMENT_ID)"
> >
删除 删除

View File

@ -13,6 +13,7 @@
<el-select <el-select
v-model="data.form.LOCATIONTYPE" v-model="data.form.LOCATIONTYPE"
placeholder="请选择地点类型" placeholder="请选择地点类型"
clearable
> >
<el-option <el-option
v-for="item in LOCATIONTYPEMENU" v-for="item in LOCATIONTYPEMENU"
@ -28,6 +29,7 @@
<el-input <el-input
v-model="data.form.LOCATIONNAME" v-model="data.form.LOCATIONNAME"
placeholder="请输入地点名称" placeholder="请输入地点名称"
clearable
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -37,6 +39,7 @@
ref="territoryCascaderRef" ref="territoryCascaderRef"
v-model="data.form.ADMINISTRATIVEREGIONS" v-model="data.form.ADMINISTRATIVEREGIONS"
:level="2" :level="2"
clearable
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -45,6 +48,7 @@
<el-input <el-input
v-model="data.form.ADDRESSDETAILS" v-model="data.form.ADDRESSDETAILS"
placeholder="请输入地址详情" placeholder="请输入地址详情"
clearable
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>

View File

@ -9,7 +9,7 @@
<el-row> <el-row>
<el-col :span="6"> <el-col :span="6">
<el-form-item label="地点类型" prop="LOCATIONTYPE"> <el-form-item label="地点类型" prop="LOCATIONTYPE">
<el-select v-model="searchForm.LOCATIONTYPE"> <el-select v-model="searchForm.LOCATIONTYPE" clearable>
<el-option label="起运地" :value="1" /> <el-option label="起运地" :value="1" />
<el-option label="目的地" :value="2" /> <el-option label="目的地" :value="2" />
</el-select> </el-select>
@ -17,7 +17,7 @@
</el-col> </el-col>
<el-col :span="6"> <el-col :span="6">
<el-form-item label="运输企业" prop="TRANSPORTATIONCOMPANY"> <el-form-item label="运输企业" prop="TRANSPORTATIONCOMPANY">
<el-select v-model="searchForm.TRANSPORTATIONCOMPANY"> <el-select v-model="searchForm.TRANSPORTATIONCOMPANY" clearable>
<el-option <el-option
v-for="item in data.unitsList" v-for="item in data.unitsList"
:key="item.CORPINFO_ID" :key="item.CORPINFO_ID"
@ -71,7 +71,7 @@
<el-button <el-button
text text
link link
type="primary" type="danger"
@click="deleteItem(row.LOCATIONMANAGEMENT_ID)" @click="deleteItem(row.LOCATIONMANAGEMENT_ID)"
> >
删除 删除

View File

@ -34,6 +34,7 @@
<el-input <el-input
v-model="data.form.WAYBILLNUMBER" v-model="data.form.WAYBILLNUMBER"
placeholder="请输入运单编号" placeholder="请输入运单编号"
clearable
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -45,6 +46,7 @@
format="YYYY-MM-DD" format="YYYY-MM-DD"
value-format="YYYY-MM-DD" value-format="YYYY-MM-DD"
placeholder="选择时间" placeholder="选择时间"
clearable
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -53,6 +55,7 @@
<el-select <el-select
v-model="data.form.TRANSPORTVEHICLE" v-model="data.form.TRANSPORTVEHICLE"
placeholder="请选择运输车辆" placeholder="请选择运输车辆"
clearable
> >
<el-option <el-option
v-for="item in data.OperationVehicle" v-for="item in data.OperationVehicle"
@ -68,6 +71,7 @@
<el-select <el-select
v-model="data.form.PRACTITIONER" v-model="data.form.PRACTITIONER"
placeholder="请选择从业人员" placeholder="请选择从业人员"
clearable
> >
<el-option <el-option
v-for="item in data.userTypeList" v-for="item in data.userTypeList"
@ -83,6 +87,7 @@
<el-select <el-select
v-model="data.form.TRUCKCART" v-model="data.form.TRUCKCART"
placeholder="请选择货运挂车" placeholder="请选择货运挂车"
clearable
> >
<el-option <el-option
v-for="item in data.OperationTruck" v-for="item in data.OperationTruck"
@ -103,6 +108,7 @@
<el-select <el-select
v-model="data.form.CLIENT" v-model="data.form.CLIENT"
placeholder="请选择委托方" placeholder="请选择委托方"
clearable
@change="changeCLIENT" @change="changeCLIENT"
> >
<el-option <el-option
@ -119,6 +125,7 @@
<el-select <el-select
v-model="data.form.CLIENTCONTACTPERSON" v-model="data.form.CLIENTCONTACTPERSON"
placeholder="请选择委联系人" placeholder="请选择委联系人"
clearable
@change="changeCLIENTCONTACTPERSON" @change="changeCLIENTCONTACTPERSON"
> >
<el-option <el-option
@ -135,6 +142,7 @@
<el-input <el-input
v-model="data.form.CLIENTCONTACTPHONE" v-model="data.form.CLIENTCONTACTPHONE"
placeholder="请输入联系电话" placeholder="请输入联系电话"
clearable
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -143,6 +151,7 @@
<el-select <el-select
v-model="data.form.CONFIRMER" v-model="data.form.CONFIRMER"
placeholder="请选择确认方" placeholder="请选择确认方"
clearable
@change="changeCONFIRMER" @change="changeCONFIRMER"
> >
<el-option <el-option
@ -159,6 +168,7 @@
<el-select <el-select
v-model="data.form.CONFIRMINGPERSON" v-model="data.form.CONFIRMINGPERSON"
placeholder="请选择确认方联系人" placeholder="请选择确认方联系人"
clearable
@change="changeCONFIRMINGPERSON" @change="changeCONFIRMINGPERSON"
> >
<el-option <el-option
@ -175,6 +185,7 @@
<el-input <el-input
v-model="data.form.CONFIRMINGPHONE" v-model="data.form.CONFIRMINGPHONE"
placeholder="请输入联系电话" placeholder="请输入联系电话"
clearable
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -188,6 +199,7 @@
<el-select <el-select
v-model="data.form.ORIGIN" v-model="data.form.ORIGIN"
placeholder="请选择起运地点" placeholder="请选择起运地点"
clearable
@change="changeORIGIN" @change="changeORIGIN"
> >
<el-option <el-option
@ -204,6 +216,7 @@
<el-select <el-select
v-model="data.form.SHIPPINGADDRESS" v-model="data.form.SHIPPINGADDRESS"
placeholder="请选择起运地址" placeholder="请选择起运地址"
clearable
@change="changeSHIPPINGADDRESS" @change="changeSHIPPINGADDRESS"
> >
<el-option <el-option
@ -220,6 +233,7 @@
<el-input <el-input
v-model="data.form.STARTADMINISTRATIVEAREA" v-model="data.form.STARTADMINISTRATIVEAREA"
placeholder="请输入行政区域" placeholder="请输入行政区域"
clearable
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -228,6 +242,7 @@
<el-select <el-select
v-model="data.form.DESTINATION" v-model="data.form.DESTINATION"
placeholder="请选择目的地点" placeholder="请选择目的地点"
clearable
@change="changeDESTINATION" @change="changeDESTINATION"
> >
<el-option <el-option
@ -244,6 +259,7 @@
<el-select <el-select
v-model="data.form.DESTINATIONADDRESS" v-model="data.form.DESTINATIONADDRESS"
placeholder="请选择起运地址" placeholder="请选择起运地址"
clearable
@change="changeDESTINATIONADDRESS" @change="changeDESTINATIONADDRESS"
> >
<el-option <el-option
@ -260,6 +276,7 @@
<el-input <el-input
v-model="data.form.ENDDMINISTRATIVEAREA" v-model="data.form.ENDDMINISTRATIVEAREA"
placeholder="请输入行政区域" placeholder="请输入行政区域"
clearable
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>

View File

@ -9,12 +9,12 @@
<el-row> <el-row>
<el-col :span="6"> <el-col :span="6">
<el-form-item label="车辆车牌" prop="TRANSPORTVEHICLE"> <el-form-item label="车辆车牌" prop="TRANSPORTVEHICLE">
<el-input v-model="searchForm.TRANSPORTVEHICLE" /> <el-input v-model="searchForm.TRANSPORTVEHICLE" clearable />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6"> <el-col :span="6">
<el-form-item label="运单状态" prop="WAYBILLSTATUS"> <el-form-item label="运单状态" prop="WAYBILLSTATUS">
<el-select v-model="searchForm.WAYBILLSTATUS"> <el-select v-model="searchForm.WAYBILLSTATUS" clearable>
<el-option label="收车后" :value="2" /> <el-option label="收车后" :value="2" />
<el-option label="已出发" :value="1" /> <el-option label="已出发" :value="1" />
<el-option label="未出发" :value="0" /> <el-option label="未出发" :value="0" />

View File

@ -4,10 +4,23 @@
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="24"> <el-col :span="24">
<el-divider content-position="left">基本信息</el-divider> <el-divider content-position="left">基本信息</el-divider>
<div class="buttons-container">
<el-button type="primary" @click="fnDownloadTemplate"
>下载模板</el-button
>
<el-button type="primary" @click="fnUploadQuestions"
>上传</el-button
>
</div>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="自编号" prop="NUM"> <el-form-item label="自编号" prop="NUM">
<el-input v-model="form.NUM" maxlength="50" show-word-limit /> <el-input
v-model="form.NUM"
maxlength="50"
show-word-limit
clearable
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
@ -16,12 +29,18 @@
v-model="form.PLATE_NUMBER" v-model="form.PLATE_NUMBER"
maxlength="50" maxlength="50"
show-word-limit show-word-limit
clearable
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="车架号" prop="VIN"> <el-form-item label="车架号" prop="VIN">
<el-input v-model="form.VIN" maxlength="50" show-word-limit /> <el-input
v-model="form.VIN"
maxlength="50"
show-word-limit
clearable
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
@ -30,6 +49,7 @@
v-model="form.VEHICLE_BODY_NUMBER" v-model="form.VEHICLE_BODY_NUMBER"
maxlength="50" maxlength="50"
show-word-limit show-word-limit
clearable
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -39,6 +59,7 @@
v-model="form.TRAILER_TYPE" v-model="form.TRAILER_TYPE"
maxlength="50" maxlength="50"
show-word-limit show-word-limit
clearable
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -48,6 +69,7 @@
v-model="form.OPER_CERTIFICATE_NUM" v-model="form.OPER_CERTIFICATE_NUM"
maxlength="50" maxlength="50"
show-word-limit show-word-limit
clearable
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -62,6 +84,7 @@
v-model="form.CAR_OWNERS" v-model="form.CAR_OWNERS"
maxlength="50" maxlength="50"
show-word-limit show-word-limit
clearable
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -71,12 +94,18 @@
v-model="form.CAR_OWNERS_TEL" v-model="form.CAR_OWNERS_TEL"
maxlength="11" maxlength="11"
show-word-limit show-word-limit
clearable
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="联系人" prop="CONTACTS"> <el-form-item label="联系人" prop="CONTACTS">
<el-input v-model="form.CONTACTS" maxlength="50" show-word-limit /> <el-input
v-model="form.CONTACTS"
maxlength="50"
show-word-limit
clearable
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
@ -85,6 +114,7 @@
v-model="form.CONTACT_PHONE" v-model="form.CONTACT_PHONE"
maxlength="11" maxlength="11"
show-word-limit show-word-limit
clearable
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -95,6 +125,7 @@
value-format="YYYY-MM-DD" value-format="YYYY-MM-DD"
format="YYYY-MM-DD" format="YYYY-MM-DD"
type="date" type="date"
clearable
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -105,6 +136,7 @@
value-format="YYYY-MM-DD" value-format="YYYY-MM-DD"
format="YYYY-MM-DD" format="YYYY-MM-DD"
type="date" type="date"
clearable
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -115,6 +147,7 @@
value-format="YYYY-MM-DD" value-format="YYYY-MM-DD"
format="YYYY-MM-DD" format="YYYY-MM-DD"
type="date" type="date"
clearable
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -127,6 +160,7 @@
v-model="form.TRAILER_BRAND" v-model="form.TRAILER_BRAND"
maxlength="50" maxlength="50"
show-word-limit show-word-limit
clearable
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -136,6 +170,7 @@
v-model="form.TRAILER_MODEL" v-model="form.TRAILER_MODEL"
maxlength="50" maxlength="50"
show-word-limit show-word-limit
clearable
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -145,6 +180,7 @@
v-model="form.APPROVED_TOTAL_MASS" v-model="form.APPROVED_TOTAL_MASS"
maxlength="50" maxlength="50"
show-word-limit show-word-limit
clearable
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -154,12 +190,18 @@
v-model="form.APPROVED_LOAD_CAPACITY" v-model="form.APPROVED_LOAD_CAPACITY"
maxlength="50" maxlength="50"
show-word-limit show-word-limit
clearable
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="容积/体积" prop="VOLUME"> <el-form-item label="容积/体积" prop="VOLUME">
<el-input v-model="form.TEAM_NAME" maxlength="50" show-word-limit /> <el-input
v-model="form.VOLUME"
maxlength="50"
show-word-limit
clearable
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
@ -170,6 +212,7 @@
:autosize="{ minRows: 3 }" :autosize="{ minRows: 3 }"
maxlength="250" maxlength="250"
show-word-limit show-word-limit
clearable
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -235,7 +278,7 @@ import {
setFreightTrailerEdit, setFreightTrailerEdit,
} from "@/request/enterprise_management.js"; } from "@/request/enterprise_management.js";
import { setUploadImg } from "@/request/api.js"; import { setUploadImg } from "@/request/api.js";
import { ElMessage } from "element-plus"; import { ElMessage, ElMessageBox } 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 } from "@/assets/js/utils.js"; import { addingPrefixToFile } from "@/assets/js/utils.js";
@ -334,6 +377,16 @@ const fnGetData = async () => {
}; };
fnGetData(); fnGetData();
const fnDownloadTemplate = async () => {
await ElMessageBox.confirm("确定要下载excel模板吗", {
type: "warning",
});
window.open(
import.meta.env[import.meta.env.DEV ? "VITE_PROXY" : "VITE_BASE_URL"] +
"freightTrailer/downExcel"
);
};
const fnSubmit = debounce( const fnSubmit = debounce(
1000, 1000,
async () => { async () => {
@ -391,4 +444,10 @@ const fnUploadImage = async (HIDDEN_ID, FFILE, TYPE) => {
}; };
</script> </script>
<style scoped lang="scss"></style> <style scoped>
.buttons-container {
display: flex;
justify-content: flex-end;
padding-bottom: 20px;
}
</style>

View File

@ -53,7 +53,7 @@ const props = defineProps({
const emits = defineEmits(["update:visible"]); const emits = defineEmits(["update:visible"]);
const visible = useVModel(props, "visible", emits); const visible = useVModel(props, "visible", emits);
const options = [ const options = [
"编号", "编号",
"车牌号", "车牌号",
"车架号", "车架号",
"挂车类型", "挂车类型",

View File

@ -6,7 +6,7 @@
<el-divider content-position="left">基本信息</el-divider> <el-divider content-position="left">基本信息</el-divider>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="编号" prop="NUM"> <el-form-item label="编号" prop="NUM">
<el-input v-model="form.NUM" maxlength="50" show-word-limit /> <el-input v-model="form.NUM" maxlength="50" show-word-limit />
</el-form-item> </el-form-item>
</el-col> </el-col>

View File

@ -7,24 +7,24 @@
@submit.prevent="fnResetPaginationTransfer" @submit.prevent="fnResetPaginationTransfer"
> >
<el-row> <el-row>
<el-col :span="5"> <el-col :span="4">
<el-form-item label="车牌号" prop="PLATE_NUMBER"> <el-form-item label="车牌号" prop="PLATE_NUMBER">
<el-input v-model="searchForm.PLATE_NUMBER" /> <el-input v-model="searchForm.PLATE_NUMBER" clearable />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item label="车架号" prop="VIN"> <el-form-item label="车架号" prop="VIN">
<el-input v-model="searchForm.VIN" /> <el-input v-model="searchForm.VIN" clearable />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item label="自编号" prop="NUM"> <el-form-item label="自编号" prop="NUM">
<el-input v-model="searchForm.NUM" /> <el-input v-model="searchForm.NUM" clearable />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item label="归属部门" prop="DEPARTMENT_NAME"> <el-form-item label="归属部门" prop="DEPARTMENT_NAME">
<el-input v-model="searchForm.DEPARTMENT_NAME" /> <el-input v-model="searchForm.DEPARTMENT_NAME" clearable />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="3"> <el-col :span="3">
@ -35,9 +35,12 @@
</el-button> </el-button>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="1"> <el-col :span="6" :offset="18">
<el-form-item label-width="10px" class="end"> <el-form-item label-width="10px" class="end">
<el-button @click="fnExport"></el-button> <el-button type="primary" @click="fnImportDialogChangeShow">
导入
</el-button>
<el-button type="primary" @click="fnExport"></el-button>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@ -57,8 +60,8 @@
{{ serialNumber(pagination, $index) }} {{ serialNumber(pagination, $index) }}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="NUM" label="自编号" width="150" /> <el-table-column prop="NUM" label="自编号" width="200" />
<el-table-column prop="PLATE_NUMBER" label="车牌号" width="150" /> <el-table-column prop="PLATE_NUMBER" label="车牌号" width="200" />
<el-table-column prop="CONTACTS" label="联系人" width="150" /> <el-table-column prop="CONTACTS" label="联系人" width="150" />
<el-table-column prop="CONTACT_PHONE" label="联系电话" width="150" /> <el-table-column prop="CONTACT_PHONE" label="联系电话" width="150" />
<el-table-column prop="TRAILER_TYPE" label="挂车类型" width="150" /> <el-table-column prop="TRAILER_TYPE" label="挂车类型" width="150" />
@ -67,7 +70,7 @@
label="初登日期" label="初登日期"
width="150" width="150"
/> />
<el-table-column prop="DUE_DATE" label="到期日期" width="150" /> <el-table-column prop="DUE_DATE" label="到期日期" width="200" />
<el-table-column prop="DEPARTMENT_NAME" label="归属部门" width="150" /> <el-table-column prop="DEPARTMENT_NAME" label="归属部门" width="150" />
<el-table-column label="操作" width="150"> <el-table-column label="操作" width="150">
<template #default="{ row }"> <template #default="{ row }">
@ -98,7 +101,7 @@
编辑 编辑
</el-button> </el-button>
<el-button <el-button
type="primary" type="danger"
text text
link link
@click="fnDelete(row.FREIGHTTRAILER_ID)" @click="fnDelete(row.FREIGHTTRAILER_ID)"
@ -122,11 +125,6 @@
</template> </template>
</layout-table> </layout-table>
</layout-card> </layout-card>
<export-excel
v-model:visible="data.exportExcelDialog.visible"
:search-form="searchForm"
:ids="data.exportExcelDialog.ids"
/>
</div> </div>
</template> </template>
@ -139,17 +137,9 @@ import {
getFreightTrailerList, getFreightTrailerList,
setFreightTrailerDelete, setFreightTrailerDelete,
} from "@/request/enterprise_management.js"; } from "@/request/enterprise_management.js";
import ExportExcel from "./components/export_excel.vue";
import { reactive } from "vue";
import { debounce } from "throttle-debounce"; import { debounce } from "throttle-debounce";
import { ElMessageBox, ElMessage } from "element-plus"; import { ElMessageBox, ElMessage } from "element-plus";
const router = useRouter(); const router = useRouter();
const data = reactive({
exportExcelDialog: {
visible: false,
ids: [],
},
});
const { list, pagination, searchForm, fnGetData, fnResetPagination, tableRef } = const { list, pagination, searchForm, fnGetData, fnResetPagination, tableRef } =
useListData(getFreightTrailerList); useListData(getFreightTrailerList);
const fnGetDataTransfer = () => { const fnGetDataTransfer = () => {
@ -168,6 +158,22 @@ const fnResetPaginationTransfer = () => {
DEPARTMENT_NAME: searchForm.value.DEPARTMENT_NAME, DEPARTMENT_NAME: searchForm.value.DEPARTMENT_NAME,
}); });
}; };
const fnExport = async () => {
const selectionData = tableRef.value.getSelectionRows();
if (selectionData.length === 0) {
ElMessage.warning("请选择需要导出至excel报表的记录信息");
return;
}
await ElMessageBox.confirm("确定要导出到excel吗", { type: "warning" });
const DATA_IDS = selectionData.map((item) => item.RISKUNIT_ID).join(",");
window.location.href =
import.meta.env[import.meta.env.DEV ? "VITE_PROXY" : "VITE_BASE_URL"] +
"/freightTrailer/excel?" +
"&KEYWORDS=" +
(searchForm.value.KEYWORDS || "") +
"&DATA_IDS=" +
DATA_IDS;
};
const fnDelete = debounce( const fnDelete = debounce(
1000, 1000,
async (FREIGHTTRAILER_ID) => { async (FREIGHTTRAILER_ID) => {
@ -179,13 +185,6 @@ const fnDelete = debounce(
{ atBegin: true } { atBegin: true }
); );
const buttonJurisdiction = await useButtonJurisdiction("hidden"); const buttonJurisdiction = await useButtonJurisdiction("hidden");
const fnExport = () => {
const selectionData = tableRef.value.getSelectionRows();
data.exportExcelDialog.ids = selectionData.map(
(item) => item.FREIGHTTRAILER_ID
);
data.exportExcelDialog.visible = true;
};
</script> </script>
<style scoped></style> <style scoped></style>

View File

@ -3,7 +3,7 @@
<div id="printContainer"> <div id="printContainer">
<el-divider content-position="left">基本信息</el-divider> <el-divider content-position="left">基本信息</el-divider>
<el-descriptions :column="2" border> <el-descriptions :column="2" border>
<el-descriptions-item label-class-name="width_200" label="编号"> <el-descriptions-item label-class-name="width_200" label="编号">
{{ info.NUM }} {{ info.NUM }}
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item label-class-name="width_200" label="车牌号"> <el-descriptions-item label-class-name="width_200" label="车牌号">
@ -37,9 +37,9 @@
<el-descriptions-item label-class-name="width_200" label="联系人"> <el-descriptions-item label-class-name="width_200" label="联系人">
{{ info.CONTACTS }} {{ info.CONTACTS }}
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item label-class-name="width_200" label="车主电话"> <!-- <el-descriptions-item label-class-name="width_200" label="车主电话">-->
{{ info.CAR_OWNERS_TEL }} <!-- {{ info.CAR_OWNERS_TEL }}-->
</el-descriptions-item> <!-- </el-descriptions-item>-->
<el-descriptions-item label-class-name="width_200" label="联系电话"> <el-descriptions-item label-class-name="width_200" label="联系电话">
{{ info.CONTACT_PHONE }} {{ info.CONTACT_PHONE }}
</el-descriptions-item> </el-descriptions-item>

View File

@ -7,7 +7,7 @@
<el-form-item label="编号" prop="GOODSSELFNUMBER"> <el-form-item label="编号" prop="GOODSSELFNUMBER">
<el-input <el-input
v-model="form.GOODSSELFNUMBER" v-model="form.GOODSSELFNUMBER"
placeholder="请填写编号" placeholder="请填写编号"
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>

View File

@ -16,12 +16,13 @@
<el-input <el-input
v-model="searchForm.KEYWORDS" v-model="searchForm.KEYWORDS"
placeholder="请输入关键字" placeholder="请输入关键字"
clearable
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="人员类型" prop="PERSONNEL_TYPE"> <el-form-item label="人员类型" prop="PERSONNEL_TYPE">
<el-select v-model="searchForm.PERSONNEL_TYPE"> <el-select v-model="searchForm.PERSONNEL_TYPE" clearable>
<el-option <el-option
v-for="item in data.personnelTypeList" v-for="item in data.personnelTypeList"
:key="item.DICTIONARIES_ID" :key="item.DICTIONARIES_ID"
@ -106,14 +107,11 @@
查看 查看
</el-button> </el-button>
<el-button <el-button
v-if=" v-if="buttonJurisdiction.edit && row.APPLY_STATUS !== '0'"
buttonJurisdiction.edit && type="primary"
row.APPLY_STATUS !== '0' text
" link
type="primary" @click="
text
link
@click="
router.push({ router.push({
path: '/enterprise_management/user_practitioner/edit', path: '/enterprise_management/user_practitioner/edit',
query: { query: {

View File

@ -10,6 +10,7 @@
v-model="form.CONTRACTNAME" v-model="form.CONTRACTNAME"
placeholder="请输入合同名称" placeholder="请输入合同名称"
style="width: 300px" style="width: 300px"
clearable
></el-input> ></el-input>
</el-form-item> </el-form-item>
<el-form-item <el-form-item
@ -17,7 +18,7 @@
label="经营企业" label="经营企业"
prop="OPERATINGCOMPANY" prop="OPERATINGCOMPANY"
> >
<span>{{ operatingCompany }}</span> <span>{{ form.OPERATINGCOMPANY }}</span>
</el-form-item> </el-form-item>
<el-form-item label="合同文件" prop="file"> <el-form-item label="合同文件" prop="file">
<layout-upload <layout-upload
@ -34,11 +35,12 @@
format="YYYY-MM-DD" format="YYYY-MM-DD"
value-format="YYYY-MM-DD" value-format="YYYY-MM-DD"
placeholder="选择时间" placeholder="选择时间"
clearable
/> />
</el-form-item> </el-form-item>
<el-form-item label="备注" prop="MEETING_CONTENT"> <el-form-item label="备注" prop="CONTENT">
<el-input <el-input
v-model="form.MEETING_CONTENT" v-model="form.CONTENT"
type="textarea" type="textarea"
placeholder="请输入内容" placeholder="请输入内容"
style="width: 300px" style="width: 300px"
@ -53,14 +55,13 @@
</template> </template>
<script setup> <script setup>
import { onMounted, ref, toRaw } from "vue"; import { ref, toRaw } from "vue";
import { useVModels } from "@vueuse/core"; import { useVModels } from "@vueuse/core";
import { ElMessage } from "element-plus"; import { ElMessage } from "element-plus";
import LayoutUpload from "@/components/upload/index.vue"; import LayoutUpload from "@/components/upload/index.vue";
import { import {
addContractView, addContractView,
editContractView, editContractView,
getSafetyContractList,
} from "@/request/traffic_safety_contract.js"; } from "@/request/traffic_safety_contract.js";
const props = defineProps({ const props = defineProps({
@ -99,13 +100,6 @@ const rules = {
], ],
}; };
const operatingCompany = ref("");
onMounted(async () => {
const resData = await getSafetyContractList();
if (resData && resData.varList && resData.varList.length > 0) {
operatingCompany.value = resData.varList[0].CORP_NAME;
}
});
const formRef = ref(null); const formRef = ref(null);
const fnClose = () => { const fnClose = () => {
formRef.value.resetFields(); formRef.value.resetFields();

View File

@ -65,7 +65,7 @@
<el-button <el-button
text text
link link
type="primary" type="danger"
@click="deleteItem(row.LABORCONTRACT_ID)" @click="deleteItem(row.LABORCONTRACT_ID)"
> >
删除 删除
@ -109,6 +109,7 @@ import Add from "@/views/labor_contract/components/add.vue";
import LayoutPdf from "@/components/pdf/index.vue"; import LayoutPdf from "@/components/pdf/index.vue";
import { import {
deleteContractView, deleteContractView,
getSafetyContractList,
getSafetyContractUserList, getSafetyContractUserList,
} from "@/request/traffic_safety_contract.js"; } from "@/request/traffic_safety_contract.js";
@ -152,7 +153,16 @@ const fnAddOrEdit = async (
data.addOrEditDialog.type = type; data.addOrEditDialog.type = type;
data.addOrEditDialog.form = {}; data.addOrEditDialog.form = {};
if (type === "edit" && LABORCONTRACT_ID) { if (type === "edit" && LABORCONTRACT_ID) {
data.addOrEditDialog.form.LABORCONTRACT_ID = LABORCONTRACT_ID; const resData = await getSafetyContractList({ LABORCONTRACT_ID });
if (resData && resData.varList && resData.varList.length > 0) {
const detail = resData.varList.find(
(detail) => detail.USER_ID === USER_ID
);
data.addOrEditDialog.form = {
...detail,
OPERATINGCOMPANY: detail.CORP_NAME,
};
}
} else { } else {
data.addOrEditDialog.form = { USER_ID }; data.addOrEditDialog.form = { USER_ID };
} }

View File

@ -9,12 +9,12 @@
<el-row> <el-row>
<el-col :span="6"> <el-col :span="6">
<el-form-item label="合同名称" prop="CONTRACTNAME"> <el-form-item label="合同名称" prop="CONTRACTNAME">
<el-input v-model="searchForm.CONTRACTNAME" /> <el-input v-model="searchForm.CONTRACTNAME" clearable />
</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"> <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>
@ -22,7 +22,7 @@
</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"> <el-select v-model="searchForm.VALIDSTATUS" 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>
@ -52,8 +52,9 @@
{{ serialNumber(pagination, $index) }} {{ serialNumber(pagination, $index) }}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="NEWCONTRACTNAME" label="合同名称" width="250" /> <el-table-column prop="NEWCONTRACTNAME" label="用户名称" width="100" />
<el-table-column prop="COMPLETIONSTATUS" label="完成状态" width="250"> <el-table-column prop="CONTRACTNAME" label="合同名称" width="250" />
<el-table-column prop="COMPLETIONSTATUS" label="完成状态" width="150">
<template #default="{ row }"> <template #default="{ row }">
<el-tag v-if="row.COMPLETIONSTATUS === '1'"></el-tag> <el-tag v-if="row.COMPLETIONSTATUS === '1'"></el-tag>
<el-tag v-else></el-tag> <el-tag v-else></el-tag>
@ -146,7 +147,7 @@ const data = reactive({
watchEffect(() => { watchEffect(() => {
if (list.value.length > 0) { if (list.value.length > 0) {
list.value.forEach((item) => { list.value.forEach((item) => {
item.NEWCONTRACTNAME = `${item.NAME} 合同书`; item.NEWCONTRACTNAME = `${item.NAME}`;
}); });
} }
}); });

View File

@ -9,12 +9,12 @@
<el-row> <el-row>
<el-col :span="6"> <el-col :span="6">
<el-form-item label="名称" prop="SYSTEMNAME"> <el-form-item label="名称" prop="SYSTEMNAME">
<el-input v-model="searchForm.SYSTEMNAME" /> <el-input v-model="searchForm.SYSTEMNAME" clearable />
</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"> <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>
@ -22,7 +22,7 @@
</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"> <el-select v-model="searchForm.VALIDSTATUS" 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>
@ -91,7 +91,7 @@
<el-button <el-button
text text
link link
type="primary" type="danger"
@click="deleteItem(row.STAFFING_ID)" @click="deleteItem(row.STAFFING_ID)"
> >
删除 删除

View File

@ -195,6 +195,17 @@
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-form-item label="合同" prop="CONTRACT">
<layout-upload
v-model:file-list="form.CONTRACT"
list-type="picture-card"
accept=".jpg,.jpeg,.png"
:limit="99"
delete-to-server
/>
</el-form-item>
</el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="备注" prop="NOTES"> <el-form-item label="备注" prop="NOTES">
<el-input <el-input
@ -248,6 +259,7 @@ const form = ref({
REMINDER_DATE: "", REMINDER_DATE: "",
REMINDER_STATUS: "", REMINDER_STATUS: "",
BEIDOUINFO: [], BEIDOUINFO: [],
CONTRACT: [],
}); });
const data = reactive({ const data = reactive({
vehicleList: [], vehicleList: [],
@ -339,6 +351,15 @@ const fnGetData = async () => {
}; };
fnGetData(); fnGetData();
// 128129
const fnUploadImage = async (currentId, FFILE, TYPE) => {
const formData = new FormData();
formData.append("FOREIGN_KEY", currentId);
formData.append("TYPE", TYPE); // TYPE
formData.append("FFILE", FFILE);
await setUploadImg(formData);
};
const fnSubmit = debounce( const fnSubmit = debounce(
1000, 1000,
async () => { async () => {
@ -347,22 +368,33 @@ const fnSubmit = debounce(
? await setBeidouAdd({ ...form.value }) ? await setBeidouAdd({ ...form.value })
: await setBeidouEdit({ ...form.value, BEIDOU_ID }); : await setBeidouEdit({ ...form.value, BEIDOU_ID });
const currentId = resData.pd.BEIDOU_ID; const currentId = resData.pd.BEIDOU_ID;
//
for (let i = 0; i < form.value.BEIDOUINFO.length; i++) { for (let i = 0; i < form.value.BEIDOUINFO.length; i++) {
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();
}, },
{ atBegin: true } { atBegin: true }
); );
const fnUploadImage = async (HIDDEN_ID, FFILE, TYPE) => { // const fnUploadImage = async (currentId, FFILE, TYPE) => {
const formData = new FormData(); // const formData = new FormData();
formData.append("FOREIGN_KEY", HIDDEN_ID); // formData.append("FOREIGN_KEY", currentId);
formData.append("TYPE", TYPE); // formData.append("TYPE", TYPE);
formData.append("FFILE", FFILE); // formData.append("FFILE", FFILE);
await setUploadImg(formData); // await setUploadImg(formData);
}; // };
</script> </script>
<style scoped lang="scss"></style> <style scoped lang="scss"></style>

View File

@ -53,7 +53,7 @@ const props = defineProps({
const emits = defineEmits(["update:visible"]); const emits = defineEmits(["update:visible"]);
const visible = useVModel(props, "visible", emits); const visible = useVModel(props, "visible", emits);
const options = [ const options = [
"编号", "编号",
"车牌号", "车牌号",
"车架号", "车架号",
"挂车类型", "挂车类型",

View File

@ -101,15 +101,15 @@
<!--<el-table-column prop="CONTACTS" label="经营企业" width="150"/>--> <!--<el-table-column prop="CONTACTS" label="经营企业" width="150"/>-->
<el-table-column prop="REMINDER_STATUS" label="提醒状态" width="150"> <el-table-column prop="REMINDER_STATUS" label="提醒状态" width="150">
<template #default="{ row }"> <template #default="{ row }">
<span v-if="row.REMINDER_STATUS === '1'"></span> <el-tag v-if="row.REMINDER_STATUS === '1'"></el-tag>
<span v-else-if="row.REMINDER_STATUS === '0'">关闭</span> <el-tag v-else-if="row.REMINDER_STATUS === '0'">关闭</el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="DUE_DATE_TYPE" label="到期状态" width="150"> <el-table-column prop="DUE_DATE_TYPE" label="到期状态" width="150">
<template #default="{ row }"> <template #default="{ row }">
<span v-if="row.DUE_DATE_TYPE === 1"></span> <el-tag v-if="row.DUE_DATE_TYPE === 1"></el-tag>
<span v-else-if="row.DUE_DATE_TYPE === 0">已到期</span> <el-tag v-else-if="row.DUE_DATE_TYPE === 0">已到期</el-tag>
<span v-else-if="row.DUE_DATE_TYPE === 2">即将到期</span> <el-tag v-else-if="row.DUE_DATE_TYPE === 2">即将到期</el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="操作" width="250"> <el-table-column label="操作" width="250">

View File

@ -81,6 +81,22 @@
class="ml-10" class="ml-10"
/> />
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item
label-class-name="width_200"
label="合同"
span="2"
>
<img
v-for="item in info.CONTRACT"
:key="item.FILEPATH"
v-viewer
:src="item.url"
width="100"
height="100"
alt=""
class="ml-10"
/>
</el-descriptions-item>
<el-descriptions-item <el-descriptions-item
label-class-name="width_200" label-class-name="width_200"
label="备注" label="备注"

View File

@ -43,47 +43,49 @@
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-row :gutter="20">
<el-form-item label="车牌号" prop="PLATE_NUMBER"> <el-col :span="12">
<el-input v-model="data.busInfo.PLATE_NUMBER" disabled /> <el-form-item label="车牌号" prop="PLATE_NUMBER">
</el-form-item> <el-input v-model="data.busInfo.PLATE_NUMBER" disabled />
</el-col> </el-form-item>
<el-col :span="12"> </el-col>
<el-form-item label="车架号" prop="VIN"> <el-col :span="12">
<el-input v-model="data.busInfo.VIN" disabled /> <el-form-item label="车架号" prop="VIN">
</el-form-item> <el-input v-model="data.busInfo.VIN" disabled />
</el-col> </el-form-item>
<el-col :span="12"> </el-col>
<el-form-item label="车辆类型" prop="TRAILER_TYPE"> <el-col :span="12">
<el-input v-model="data.busInfo.TRAILER_TYPE" disabled /> <el-form-item label="车辆类型" prop="TRAILER_TYPE">
</el-form-item> <el-input v-model="data.busInfo.TRAILER_TYPE" disabled />
</el-col> </el-form-item>
<el-col :span="12"> </el-col>
<el-form-item label="车主/业户" prop="CAR_OWNERS "> <el-col :span="12">
<el-input v-model="data.busInfo.CAR_OWNERS" disabled /> <el-form-item label="车主/业户" prop="CAR_OWNERS ">
</el-form-item> <el-input v-model="data.busInfo.CAR_OWNERS" disabled />
</el-col> </el-form-item>
<el-col :span="12"> </el-col>
<el-form-item label="车主电话" prop="CAR_OWNERS_TEL"> <el-col :span="12">
<el-input v-model="data.busInfo.CAR_OWNERS_TEL" disabled /> <el-form-item label="车主电话" prop="CAR_OWNERS_TEL">
</el-form-item> <el-input v-model="data.busInfo.CAR_OWNERS_TEL" disabled />
</el-col> </el-form-item>
<el-col :span="12"> </el-col>
<el-form-item label="初登日期" prop="INITIAL_REGISTRATION_DATE"> <el-col :span="12">
<el-date-picker <el-form-item label="初登日期" prop="INITIAL_REGISTRATION_DATE">
v-model="data.busInfo.INITIAL_REGISTRATION_DATE" <el-date-picker
value-format="YYYY-MM-DD" v-model="data.busInfo.INITIAL_REGISTRATION_DATE"
format="YYYY-MM-DD" value-format="YYYY-MM-DD"
type="date" format="YYYY-MM-DD"
disabled type="date"
/> disabled
</el-form-item> />
</el-col> </el-form-item>
<el-col :span="12"> </el-col>
<el-form-item label="所属区域" prop="COMPANY_AREA"> <el-col :span="12">
<el-input v-model="data.busInfo.COMPANY_AREA" disabled /> <el-form-item label="所属区域" prop="COMPANY_AREA">
</el-form-item> <el-input v-model="data.busInfo.COMPANY_AREA" disabled />
</el-col> </el-form-item>
</el-col>
</el-row>
<el-col :span="24"> <el-col :span="24">
<el-divider content-position="left">年检信息</el-divider> <el-divider content-position="left">年检信息</el-divider>
</el-col> </el-col>

View File

@ -53,7 +53,7 @@ const props = defineProps({
const emits = defineEmits(["update:visible"]); const emits = defineEmits(["update:visible"]);
const visible = useVModel(props, "visible", emits); const visible = useVModel(props, "visible", emits);
const options = [ const options = [
"编号", "编号",
"车牌号", "车牌号",
"车架号", "车架号",
"挂车类型", "挂车类型",

View File

@ -98,47 +98,46 @@
{{ serialNumber(pagination, $index) }} {{ serialNumber(pagination, $index) }}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="NUM" label="编号" width="150" /> <el-table-column prop="NUM" label="编号" width="100" />
<el-table-column prop="VEHICLE_MODEL" label="运营车型" width="150"> <el-table-column prop="VEHICLE_MODEL" label="运营车型" width="100">
<template #default="{ row }"> <template #default="{ row }">
{{ {{
translationStatus(row.VEHICLE_MODEL, OPERATING_VEHICLE_TYPE_LIST) translationStatus(row.VEHICLE_MODEL, OPERATING_VEHICLE_TYPE_LIST)
}} }}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="PLATE_NUMBER" label="车牌号" width="150" /> <el-table-column prop="PLATE_NUMBER" label="车牌号" width="100" />
<el-table-column prop="CAR_OWNERS" label="车主业户" width="150" /> <el-table-column prop="CAR_OWNERS" label="车主业户" width="100" />
<el-table-column prop="TELEPHONE" label="联系电话" width="150" /> <el-table-column prop="TELEPHONE" label="联系电话" width="100" />
<el-table-column prop="PROCESSING_DATE" label="办理日期" width="150" /> <el-table-column prop="PROCESSING_DATE" label="办理日期" width="100" />
<el-table-column <el-table-column prop="NAME" label="年检周期" width="100" />
prop="ANNUAL_INSPECTION_CYCLE_NAME" <el-table-column prop="DUE_DATE" label="到期日期" width="100" />
label="年检周期" <el-table-column prop="REGISTRANT" label="登记人" width="100" />
width="150"
/>
<el-table-column prop="DUE_DATE" label="到期日期" width="150" />
<el-table-column prop="REGISTRANT" label="登记人" width="150" />
<!--<el-table-column prop="CONTACTS" label="经营企业" width="150"/>--> <!--<el-table-column prop="CONTACTS" label="经营企业" width="150"/>-->
<el-table-column prop="REMINDER_STATUS" label="提醒状态" width="150"> <el-table-column prop="REMINDER_STATUS" label="提醒状态" width="100">
<template #default="{ row }"> <template #default="{ row }">
<span v-if="row.REMINDER_STATUS === '1'"></span> <el-tag v-if="row.REMINDER_STATUS === '1'" type="success"
<span v-else-if="row.REMINDER_STATUS === '0'">关闭</span> >开启</el-tag
>
<el-tag v-else-if="row.REMINDER_STATUS === '0'" type="info"
>关闭</el-tag
>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="DUE_DATE_TYPE" label="到期状态" width="150"> <el-table-column prop="DUE_DATE_TYPE" label="到期状态" width="100">
<template #default="{ row }"> <template #default="{ row }">
<span v-if="row.DUE_DATE_TYPE === 1"></span> <span v-if="row.DUE_DATE_TYPE === 1"></span>
<span v-else-if="row.DUE_DATE_TYPE === 0">已到期</span> <span v-else-if="row.DUE_DATE_TYPE === 0">已到期</span>
<span v-else-if="row.DUE_DATE_TYPE === 2">即将到期</span> <span v-else-if="row.DUE_DATE_TYPE === 2">即将到期</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="ARCHIVES_TYPE" label="档案状态" width="150" /> <el-table-column prop="ARCHIVES_TYPE" label="档案状态" width="100" />
<el-table-column prop="CREATTIME" label="创建时间" width="150" /> <el-table-column prop="CREATTIME" label="创建时间" width="100" />
<el-table-column prop="OPERATTIME" label="修改时间" width="150" /> <el-table-column prop="OPERATTIME" label="修改时间" width="100" />
<el-table-column label="操作" width="250"> <el-table-column label="操作" width="100">
<template #default="{ row }"> <template #default="{ row }">
<el-button <el-button
type="primary" type="primary"
text
link link
@click=" @click="
router.push({ router.push({
@ -146,12 +145,10 @@
query: { INSPECTANNUALLY_ID: row.INSPECTANNUALLY_ID }, query: { INSPECTANNUALLY_ID: row.INSPECTANNUALLY_ID },
}) })
" "
>查看</el-button
> >
查看
</el-button>
<el-button <el-button
type="primary" type="primary"
text
link link
@click=" @click="
router.push({ router.push({
@ -159,34 +156,40 @@
query: { INSPECTANNUALLY_ID: row.INSPECTANNUALLY_ID }, query: { INSPECTANNUALLY_ID: row.INSPECTANNUALLY_ID },
}) })
" "
> >编辑
编辑
</el-button> </el-button>
<el-button <el-button
type="primary" v-if="expandedRows[row.INSPECTANNUALLY_ID]"
text type="danger"
link link
@click="fnDelete(row.INSPECTANNUALLY_ID)" @click="fnDelete(row.INSPECTANNUALLY_ID)"
> >删除
删除
</el-button> </el-button>
<el-button <el-button
v-if="row.REMINDER_STATUS === '0'" v-if="
expandedRows[row.INSPECTANNUALLY_ID] &&
row.REMINDER_STATUS === '0'
"
type="primary" type="primary"
text
link link
@click="fnStatusChange(row.INSPECTANNUALLY_ID, '1')" @click="fnStatusChange(row.INSPECTANNUALLY_ID, '1')"
>开启</el-button
> >
开启
</el-button>
<el-button <el-button
v-if="row.REMINDER_STATUS === '1'" v-if="
expandedRows[row.INSPECTANNUALLY_ID] &&
row.REMINDER_STATUS === '1'
"
type="primary" type="primary"
text
link link
@click="fnStatusChange(row.INSPECTANNUALLY_ID, '0')" @click="fnStatusChange(row.INSPECTANNUALLY_ID, '0')"
>关闭
</el-button>
<el-button
type="text"
@click="toggleExpand(row.INSPECTANNUALLY_ID)"
> >
关闭 {{ expandedRows[row.INSPECTANNUALLY_ID] ? "收起" : "更多" }}
</el-button> </el-button>
</template> </template>
</el-table-column> </el-table-column>
@ -261,6 +264,18 @@ const fnResetPaginationTransfer = () => {
REMINDER_STATUS: searchForm.value.REMINDER_STATUS, REMINDER_STATUS: searchForm.value.REMINDER_STATUS,
}); });
}; };
// 使
const expandedRows = reactive({}); //
//
function toggleExpand(rowId) {
if (expandedRows[rowId] === undefined) {
expandedRows[rowId] = true; //
} else {
expandedRows[rowId] = !expandedRows[rowId]; //
}
}
const fnDelete = debounce( const fnDelete = debounce(
1000, 1000,
async (INSPECTANNUALLY_ID) => { async (INSPECTANNUALLY_ID) => {

View File

@ -43,213 +43,223 @@
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-row :gutter="20">
<el-form-item label="车牌号" prop="PLATE_NUMBER"> <el-col :span="12">
<el-input v-model="data.busInfo.PLATE_NUMBER" disabled /> <el-form-item label="车牌号" prop="PLATE_NUMBER">
</el-form-item> <el-input v-model="data.busInfo.PLATE_NUMBER" disabled />
</el-col> </el-form-item>
<el-col :span="12"> </el-col>
<el-form-item label="车架号" prop="VIN"> <el-col :span="12">
<el-input v-model="data.busInfo.VIN" disabled /> <el-form-item label="车架号" prop="VIN">
</el-form-item> <el-input v-model="data.busInfo.VIN" disabled />
</el-col> </el-form-item>
<el-col :span="12"> </el-col>
<el-form-item label="车辆类型" prop="TRAILER_TYPE"> <el-col :span="12">
<el-input v-model="data.busInfo.TRAILER_TYPE" disabled /> <el-form-item label="车辆类型" prop="TRAILER_TYPE">
</el-form-item> <el-input v-model="data.busInfo.TRAILER_TYPE" disabled />
</el-col> </el-form-item>
<el-col :span="12"> </el-col>
<el-form-item label="车主/业户" prop="CAR_OWNERS "> <el-col :span="12">
<el-input v-model="data.busInfo.CAR_OWNERS" disabled /> <el-form-item label="车主/业户" prop="CAR_OWNERS ">
</el-form-item> <el-input v-model="data.busInfo.CAR_OWNERS" disabled />
</el-col> </el-form-item>
<el-col :span="12"> </el-col>
<el-form-item label="车主电话" prop="CAR_OWNERS_TEL"> <el-col :span="12">
<el-input v-model="data.busInfo.CAR_OWNERS_TEL" disabled /> <el-form-item label="车主电话" prop="CAR_OWNERS_TEL">
</el-form-item> <el-input v-model="data.busInfo.CAR_OWNERS_TEL" disabled />
</el-col> </el-form-item>
<el-col :span="12"> </el-col>
<el-form-item label="初登日期" prop="INITIAL_REGISTRATION_DATE"> <el-col :span="12">
<el-date-picker <el-form-item label="初登日期" prop="INITIAL_REGISTRATION_DATE">
v-model="data.busInfo.INITIAL_REGISTRATION_DATE" <el-date-picker
value-format="YYYY-MM-DD" v-model="data.busInfo.INITIAL_REGISTRATION_DATE"
format="YYYY-MM-DD" value-format="YYYY-MM-DD"
type="date" format="YYYY-MM-DD"
disabled type="date"
/> disabled
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="所属区域" prop="COMPANY_AREA">
<el-input v-model="data.busInfo.COMPANY_AREA" disabled />
</el-form-item>
</el-col>
<el-col :span="24">
<el-divider content-position="left">投保信息</el-divider>
</el-col>
<el-col :span="12">
<el-form-item label="编号" prop="NUM">
<el-input v-model="form.NUM" maxlength="50" show-word-limit />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="车主业户" prop="CAR_OWNERS">
<el-input
v-model="form.CAR_OWNERS"
maxlength="50"
show-word-limit
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="联系电话" prop="TELEPHONE">
<el-input v-model="form.TELEPHONE" maxlength="11" show-word-limit />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="登记人" prop="REGISTRANT">
<el-input
v-model="form.REGISTRANT"
maxlength="50"
show-word-limit
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="保险公司" prop="INSURANCE_COMPANY">
<el-select v-model="form.INSURANCE_COMPANY">
<el-option
v-for="item in insuranceCompanyList"
:key="item.DICTIONARIES_ID"
:label="item.NAME"
:value="item.DICTIONARIES_ID"
/> />
</el-select> </el-form-item>
</el-form-item> </el-col>
</el-col> <el-col :span="12">
<el-col :span="12"> <el-form-item label="所属区域" prop="COMPANY_AREA">
<el-form-item label="保险项目" prop="INSURANCE_COVERAGE"> <el-input v-model="data.busInfo.COMPANY_AREA" disabled />
<el-input </el-form-item>
v-model="form.INSURANCE_COVERAGE" </el-col>
maxlength="50" <el-row>
show-word-limit <el-col :span="24">
/> <el-divider content-position="left">投保信息</el-divider>
</el-form-item> </el-col>
</el-col> <el-col :span="12">
<el-col :span="12"> <el-form-item label="编号" prop="NUM">
<el-form-item label="办理日期" prop="PROCESSING_DATE"> <el-input v-model="form.NUM" maxlength="50" show-word-limit />
<el-date-picker </el-form-item>
v-model="form.PROCESSING_DATE" </el-col>
value-format="YYYY-MM-DD" <el-col :span="12">
format="YYYY-MM-DD" <el-form-item label="车主业户" prop="CAR_OWNERS">
type="date" <el-input
/> v-model="form.CAR_OWNERS"
</el-form-item> maxlength="50"
</el-col> show-word-limit
<el-col :span="12"> />
<el-form-item label="生效日期" prop="EFFECTIVE_DATE"> </el-form-item>
<el-date-picker </el-col>
v-model="form.EFFECTIVE_DATE" <el-col :span="12">
value-format="YYYY-MM-DD" <el-form-item label="联系电话" prop="TELEPHONE">
format="YYYY-MM-DD" <el-input
type="date" v-model="form.TELEPHONE"
@change="getDueDate" maxlength="11"
/> show-word-limit
</el-form-item> />
</el-col> </el-form-item>
<el-col :span="12"> </el-col>
<el-form-item label="到期日期" prop="DUE_DATE"> <el-col :span="12">
<el-date-picker <el-form-item label="登记人" prop="REGISTRANT">
v-model="form.DUE_DATE" <el-input
value-format="YYYY-MM-DD" v-model="form.REGISTRANT"
format="YYYY-MM-DD" maxlength="50"
type="date" show-word-limit
disabled />
/> </el-form-item>
</el-form-item> </el-col>
</el-col> <el-col :span="12">
<el-col :span="12"> <el-form-item label="保险公司" prop="INSURANCE_COMPANY">
<el-form-item label="保险全费" prop="ALL_FEES"> <el-select v-model="form.INSURANCE_COMPANY">
<el-input v-model="form.ALL_FEES" maxlength="50" show-word-limit /> <el-option
</el-form-item> v-for="item in INSURANCEMENU"
</el-col> :key="item.ID"
<el-col :span="12"> :label="item.NAME"
<el-form-item label="净费实收" prop="ACTUAL_COLLECTION"> :value="item.ID"
<el-input />
v-model="form.ACTUAL_COLLECTION" </el-select>
maxlength="50" </el-form-item>
show-word-limit </el-col>
/> <el-col :span="12">
</el-form-item> <el-form-item label="保险项目" prop="INSURANCE_COVERAGE">
</el-col> <el-input
<el-col :span="12"> v-model="form.INSURANCE_COVERAGE"
<el-form-item label="提醒天数" prop="REMINDER_DAYS"> maxlength="50"
<el-input show-word-limit
v-model.number="form.REMINDER_DAYS" />
maxlength="50" </el-form-item>
show-word-limit </el-col>
@change="getRemiderDate" <el-col :span="12">
/> <el-form-item label="办理日期" prop="PROCESSING_DATE">
</el-form-item> <el-date-picker
</el-col> v-model="form.PROCESSING_DATE"
<el-col :span="12"> value-format="YYYY-MM-DD"
<el-form-item label="提醒日期" prop="REMINDER_DATE"> format="YYYY-MM-DD"
<el-date-picker type="date"
v-model="form.REMINDER_DATE" />
value-format="YYYY-MM-DD" </el-form-item>
format="YYYY-MM-DD" </el-col>
type="date" <el-col :span="12">
disabled <el-form-item label="生效日期" prop="EFFECTIVE_DATE">
/> <el-date-picker
</el-form-item> v-model="form.EFFECTIVE_DATE"
</el-col> value-format="YYYY-MM-DD"
<el-col :span="12"> format="YYYY-MM-DD"
<el-form-item label="提醒状态" prop="REMINDER_STATUS"> type="date"
<el-switch @change="getDueDate"
v-model="form.REMINDER_STATUS" />
inline-prompt </el-form-item>
active-text="开" </el-col>
inactive-text="关" <el-col :span="12">
active-value="1" <el-form-item label="到期日期" prop="DUE_DATE">
inactive-value="0" <el-date-picker
/> v-model="form.DUE_DATE"
</el-form-item> value-format="YYYY-MM-DD"
</el-col> format="YYYY-MM-DD"
type="date"
disabled
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="保险全费" prop="ALL_FEES">
<el-input
v-model="form.ALL_FEES"
maxlength="50"
show-word-limit
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="净费实收" prop="ACTUAL_COLLECTION">
<el-input
v-model="form.ACTUAL_COLLECTION"
maxlength="50"
show-word-limit
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="提醒天数" prop="REMINDER_DAYS">
<el-input
v-model.number="form.REMINDER_DAYS"
maxlength="50"
show-word-limit
@change="getRemiderDate"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="提醒日期" prop="REMINDER_DATE">
<el-date-picker
v-model="form.REMINDER_DATE"
value-format="YYYY-MM-DD"
format="YYYY-MM-DD"
type="date"
disabled
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="提醒状态" prop="REMINDER_STATUS">
<el-switch
v-model="form.REMINDER_STATUS"
inline-prompt
active-text="开"
inactive-text="关"
active-value="1"
inactive-value="0"
/>
</el-form-item>
</el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="附件上传" prop="ATTACHMENT_UPLOAD"> <el-form-item label="附件上传" prop="ATTACHMENT_UPLOAD">
<layout-upload <layout-upload
v-model:file-list="form.ATTACHMENT_UPLOAD" v-model:file-list="form.ATTACHMENT_UPLOAD"
accept=".pdf" accept=".pdf"
:limit="99" :limit="99"
delete-to-server delete-to-server
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="保险资料" prop="INSUREINFO"> <el-form-item label="保险资料" prop="INSUREINFO">
<layout-upload <layout-upload
v-model:file-list="form.INSUREINFO" v-model:file-list="form.INSUREINFO"
list-type="picture-card" list-type="picture-card"
accept=".jpg,.jpeg,.png" accept=".jpg,.jpeg,.png"
:limit="99" :limit="99"
delete-to-server delete-to-server
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="备注" prop="NOTES"> <el-form-item label="备注" prop="NOTES">
<el-input <el-input
v-model="form.NOTES" v-model="form.NOTES"
type="textarea" type="textarea"
:autosize="{ minRows: 3 }" :autosize="{ minRows: 3 }"
maxlength="250" maxlength="250"
show-word-limit show-word-limit
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row> </el-row></el-row
</el-form> ></el-form>
<div class="mt-10 tc"> <div class="mt-10 tc">
<el-button type="primary" @click="fnSubmit"></el-button> <el-button type="primary" @click="fnSubmit"></el-button>
</div> </div>
@ -266,8 +276,10 @@ 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 {
import { layoutFnGetInsuranceCompany } from "@/assets/js/data_dictionary.js"; INSURANCEMENU,
OPERATING_VEHICLE_TYPE_LIST,
} 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";
@ -280,8 +292,6 @@ import {
const route = useRoute(); const route = useRoute();
const router = useRouter(); const router = useRouter();
const INSURE_ID = route.query.INSURE_ID; const INSURE_ID = route.query.INSURE_ID;
const insuranceCompanyList = await layoutFnGetInsuranceCompany();
console.log(insuranceCompanyList, "11111111111111111111111111111111111");
const formRef = ref(null); const formRef = ref(null);
const form = ref({ const form = ref({
VEHICLE_MODEL: "", VEHICLE_MODEL: "",

View File

@ -53,7 +53,7 @@ const props = defineProps({
const emits = defineEmits(["update:visible"]); const emits = defineEmits(["update:visible"]);
const visible = useVModel(props, "visible", emits); const visible = useVModel(props, "visible", emits);
const options = [ const options = [
"编号", "编号",
"车牌号", "车牌号",
"车架号", "车架号",
"挂车类型", "挂车类型",

View File

@ -137,8 +137,8 @@
<!--<el-table-column prop="CONTACTS" label="经营企业" width="150"/>--> <!--<el-table-column prop="CONTACTS" label="经营企业" width="150"/>-->
<el-table-column prop="REMINDER_STATUS" label="提醒状态" width="150"> <el-table-column prop="REMINDER_STATUS" label="提醒状态" width="150">
<template #default="{ row }"> <template #default="{ row }">
<span v-if="row.REMINDER_STATUS === '1'"></span> <el-tag v-if="row.REMINDER_STATUS === '1'"></el-tag>
<span v-else-if="row.REMINDER_STATUS === '0'">关闭</span> <el-tag v-else-if="row.REMINDER_STATUS === '0'">关闭</el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="DUE_DATE_TYPE" label="到期状态" width="150"> <el-table-column prop="DUE_DATE_TYPE" label="到期状态" width="150">

View File

@ -53,7 +53,7 @@ const props = defineProps({
const emits = defineEmits(["update:visible"]); const emits = defineEmits(["update:visible"]);
const visible = useVModel(props, "visible", emits); const visible = useVModel(props, "visible", emits);
const options = [ const options = [
"编号", "编号",
"车牌号", "车牌号",
"车架号", "车架号",
"挂车类型", "挂车类型",

View File

@ -108,15 +108,15 @@
<!--<el-table-column prop="CONTACTS" label="经营企业" width="150"/>--> <!--<el-table-column prop="CONTACTS" label="经营企业" width="150"/>-->
<el-table-column prop="REMINDER_STATUS" label="提醒状态" width="150"> <el-table-column prop="REMINDER_STATUS" label="提醒状态" width="150">
<template #default="{ row }"> <template #default="{ row }">
<span v-if="row.REMINDER_STATUS === '1'"></span> <el-tag v-if="row.REMINDER_STATUS === '1'"></el-tag>
<span v-else-if="row.REMINDER_STATUS === '0'">关闭</span> <el-tag v-else-if="row.REMINDER_STATUS === '0'">关闭</el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="DUE_DATE_TYPE" label="到期状态" width="150"> <el-table-column prop="DUE_DATE_TYPE" label="到期状态" width="150">
<template #default="{ row }"> <template #default="{ row }">
<span v-if="row.DUE_DATE_TYPE === 1"></span> <el-tag v-if="row.DUE_DATE_TYPE === 1"></el-tag>
<span v-else-if="row.DUE_DATE_TYPE === 0">已到期</span> <el-tag v-else-if="row.DUE_DATE_TYPE === 0">已到期</el-tag>
<span v-else-if="row.DUE_DATE_TYPE === 2">即将到期</span> <el-tag v-else-if="row.DUE_DATE_TYPE === 2">即将到期</el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="ARCHIVES_TYPE" label="档案状态" width="150" /> <el-table-column prop="ARCHIVES_TYPE" label="档案状态" width="150" />

View File

@ -53,7 +53,7 @@ const props = defineProps({
const emits = defineEmits(["update:visible"]); const emits = defineEmits(["update:visible"]);
const visible = useVModel(props, "visible", emits); const visible = useVModel(props, "visible", emits);
const options = [ const options = [
"编号", "编号",
"车牌号", "车牌号",
"车架号", "车架号",
"挂车类型", "挂车类型",

View File

@ -98,7 +98,7 @@
{{ serialNumber(pagination, $index) }} {{ serialNumber(pagination, $index) }}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="NUM" label="编号" width="150" /> <el-table-column prop="OPERATIONS_ID" label="编号" width="150" />
<el-table-column prop="VEHICLE_MODEL" label="运营车型" width="150"> <el-table-column prop="VEHICLE_MODEL" label="运营车型" width="150">
<template #default="{ row }"> <template #default="{ row }">
{{ {{
@ -116,8 +116,14 @@
<!--<el-table-column prop="CONTACTS" label="经营企业" width="150"/>--> <!--<el-table-column prop="CONTACTS" label="经营企业" width="150"/>-->
<el-table-column prop="REMINDER_STATUS" label="提醒状态" width="150"> <el-table-column prop="REMINDER_STATUS" label="提醒状态" width="150">
<template #default="{ row }"> <template #default="{ row }">
<span v-if="row.REMINDER_STATUS === '1'"></span> <!-- <span v-if="row.REMINDER_STATUS === '1'"></span>-->
<span v-else-if="row.REMINDER_STATUS === '0'">关闭</span> <!-- <span v-else-if="row.REMINDER_STATUS === '0'">关闭</span>-->
<el-tag v-if="row.REMINDER_STATUS === '1'" type="success"
>开启</el-tag
>
<el-tag v-else-if="row.REMINDER_STATUS === '0'" type="info"
>关闭</el-tag
>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="DUE_DATE_TYPE" label="到期状态" width="150"> <el-table-column prop="DUE_DATE_TYPE" label="到期状态" width="150">

View File

@ -14,6 +14,7 @@
v-model="form.OCCUPATIONALNAME" v-model="form.OCCUPATIONALNAME"
placeholder="请输入职业危害告知书名称" placeholder="请输入职业危害告知书名称"
style="width: 300px" style="width: 300px"
clearable
></el-input> ></el-input>
</el-form-item> </el-form-item>
<el-form-item <el-form-item
@ -21,7 +22,7 @@
label="经营企业" label="经营企业"
prop="OPERATINGCOMPANY" prop="OPERATINGCOMPANY"
> >
<span>{{ operatingCompany }}</span> <span>{{ form.OPERATINGCOMPANY }}</span>
</el-form-item> </el-form-item>
<el-form-item label="职业危害告知书" prop="file"> <el-form-item label="职业危害告知书" prop="file">
<layout-upload <layout-upload
@ -38,11 +39,12 @@
format="YYYY-MM-DD" format="YYYY-MM-DD"
value-format="YYYY-MM-DD" value-format="YYYY-MM-DD"
placeholder="选择时间" placeholder="选择时间"
clearable
/> />
</el-form-item> </el-form-item>
<el-form-item label="备注" prop="MEETING_CONTENT"> <el-form-item label="备注" prop="CONTENT">
<el-input <el-input
v-model="form.MEETING_CONTENT" v-model="form.CONTENT"
type="textarea" type="textarea"
placeholder="请输入内容" placeholder="请输入内容"
style="width: 300px" style="width: 300px"
@ -57,14 +59,13 @@
</template> </template>
<script setup> <script setup>
import { onMounted, ref, toRaw } from "vue"; import { ref, toRaw } from "vue";
import { useVModels } from "@vueuse/core"; import { useVModels } from "@vueuse/core";
import { ElMessage } from "element-plus"; import { ElMessage } from "element-plus";
import LayoutUpload from "@/components/upload/index.vue"; import LayoutUpload from "@/components/upload/index.vue";
import { import {
addOccupationalHazardsView, addOccupationalHazardsView,
editOccupationalHazardsView, editOccupationalHazardsView,
getSafetyOccupationalHazardsList,
} from "@/request/traffic_occupational_hazards.js"; } from "@/request/traffic_occupational_hazards.js";
const props = defineProps({ const props = defineProps({
@ -105,13 +106,6 @@ const rules = {
], ],
}; };
const operatingCompany = ref("");
onMounted(async () => {
const resData = await getSafetyOccupationalHazardsList();
if (resData && resData.varList && resData.varList.length > 0) {
operatingCompany.value = resData.varList[0].CORP_NAME;
}
});
const formRef = ref(null); const formRef = ref(null);
const fnClose = () => { const fnClose = () => {
formRef.value.resetFields(); formRef.value.resetFields();

View File

@ -67,7 +67,7 @@
<el-button <el-button
text text
link link
type="primary" type="danger"
@click="deleteItem(row.OCCUPATIONALHAZARDS_ID)" @click="deleteItem(row.OCCUPATIONALHAZARDS_ID)"
> >
删除 删除
@ -111,6 +111,7 @@ import Add from "@/views/occupational_hazards/components/add.vue";
import LayoutPdf from "@/components/pdf/index.vue"; import LayoutPdf from "@/components/pdf/index.vue";
import { import {
deleteOccupationalHazardsView, deleteOccupationalHazardsView,
getSafetyOccupationalHazardsList,
getSafetyOccupationalHazardsUserList, getSafetyOccupationalHazardsUserList,
} from "@/request/traffic_occupational_hazards.js"; } from "@/request/traffic_occupational_hazards.js";
@ -154,7 +155,18 @@ const fnAddOrEdit = async (
data.addOrEditDialog.type = type; data.addOrEditDialog.type = type;
data.addOrEditDialog.form = {}; data.addOrEditDialog.form = {};
if (type === "edit" && OCCUPATIONALHAZARDS_ID) { if (type === "edit" && OCCUPATIONALHAZARDS_ID) {
data.addOrEditDialog.form.OCCUPATIONALHAZARDS_ID = OCCUPATIONALHAZARDS_ID; const resData = await getSafetyOccupationalHazardsList({
OCCUPATIONALHAZARDS_ID,
});
if (resData && resData.varList && resData.varList.length > 0) {
const detail = resData.varList.find(
(detail) => detail.USER_ID === USER_ID
);
data.addOrEditDialog.form = {
...detail,
OPERATINGCOMPANY: detail.CORP_NAME,
};
}
} else { } else {
data.addOrEditDialog.form = { USER_ID }; data.addOrEditDialog.form = { USER_ID };
} }

View File

@ -13,12 +13,12 @@
prop="OCCUPATIONALNAME" prop="OCCUPATIONALNAME"
label-width="120px" label-width="120px"
> >
<el-input v-model="searchForm.OCCUPATIONALNAME" /> <el-input v-model="searchForm.OCCUPATIONALNAME" clearable />
</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"> <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>
@ -26,7 +26,7 @@
</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"> <el-select v-model="searchForm.VALIDSTATUS" 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>
@ -58,22 +58,27 @@
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="NEWOCCUPATIONALNAME" prop="NEWOCCUPATIONALNAME"
label="用户名称"
width="100"
/>
<el-table-column
prop="OCCUPATIONALNAME"
label="职业危害告知书" label="职业危害告知书"
width="250" width="250"
/> />
<el-table-column prop="COMPLETIONSTATUS" label="完成状态" width="250"> <el-table-column prop="COMPLETIONSTATUS" label="完成状态" width="100">
<template #default="{ row }"> <template #default="{ row }">
<el-tag v-if="row.COMPLETIONSTATUS === '1'"></el-tag> <el-tag v-if="row.COMPLETIONSTATUS === '1'"></el-tag>
<el-tag v-else></el-tag> <el-tag v-else></el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="有效状态" prop="VALIDSTATUS"> <el-table-column label="有效状态" prop="VALIDSTATUS" width="100">
<template #default="{ row }"> <template #default="{ row }">
<el-tag v-if="row.VALIDSTATUS === '1'"></el-tag> <el-tag v-if="row.VALIDSTATUS === '1'"></el-tag>
<el-tag v-else></el-tag> <el-tag v-else></el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="CORP_NAME" label="经营企业" width="150" /> <el-table-column prop="CORP_NAME" label="经营企业" width="220" />
<el-table-column prop="OPERATIONTYPE" label="经营类型" width="150" /> <el-table-column prop="OPERATIONTYPE" label="经营类型" width="150" />
<el-table-column prop="EXPIRYDATE" label="到期时间" width="150" /> <el-table-column prop="EXPIRYDATE" label="到期时间" width="150" />
<el-table-column prop="CREATETIME" label="创建时间" width="150" /> <el-table-column prop="CREATETIME" label="创建时间" width="150" />
@ -154,7 +159,7 @@ const data = reactive({
watchEffect(() => { watchEffect(() => {
if (list.value.length > 0) { if (list.value.length > 0) {
list.value.forEach((item) => { list.value.forEach((item) => {
item.NEWOCCUPATIONALNAME = `${item.NAME} 职业危害告知书`; item.NEWOCCUPATIONALNAME = `${item.NAME}`;
}); });
} }
}); });

View File

@ -10,6 +10,7 @@
v-model="form.SYSTEMNAME" v-model="form.SYSTEMNAME"
placeholder="请输入名称" placeholder="请输入名称"
style="width: 300px" style="width: 300px"
clearable
></el-input> ></el-input>
</el-form-item> </el-form-item>
<el-form-item <el-form-item
@ -34,6 +35,7 @@
format="YYYY-MM-DD" format="YYYY-MM-DD"
value-format="YYYY-MM-DD" value-format="YYYY-MM-DD"
placeholder="选择时间" placeholder="选择时间"
clearable
/> />
</el-form-item> </el-form-item>
</el-form> </el-form>

View File

@ -9,12 +9,12 @@
<el-row> <el-row>
<el-col :span="6"> <el-col :span="6">
<el-form-item label="名称" prop="SYSTEMNAME"> <el-form-item label="名称" prop="SYSTEMNAME">
<el-input v-model="searchForm.SYSTEMNAME" /> <el-input v-model="searchForm.SYSTEMNAME" clearable />
</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"> <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>
@ -22,7 +22,7 @@
</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"> <el-select v-model="searchForm.VALIDSTATUS" 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>
@ -90,7 +90,7 @@
<el-button <el-button
text text
link link
type="primary" type="danger"
@click="deleteItem(row.SAFETYASSESSMENT_ID)" @click="deleteItem(row.SAFETYASSESSMENT_ID)"
> >
删除 删除

View File

@ -10,6 +10,7 @@
v-model="form.SYSTEMNAME" v-model="form.SYSTEMNAME"
placeholder="请输入名称" placeholder="请输入名称"
style="width: 300px" style="width: 300px"
clearable
></el-input> ></el-input>
</el-form-item> </el-form-item>
<el-form-item <el-form-item
@ -17,7 +18,7 @@
label="经营企业" label="经营企业"
prop="OPERATINGCOMPANY" prop="OPERATINGCOMPANY"
> >
<span>{{ operatingCompany }}</span> <span>{{ form.OPERATINGCOMPANY }}</span>
</el-form-item> </el-form-item>
<el-form-item label="会议附件" prop="file"> <el-form-item label="会议附件" prop="file">
<layout-upload <layout-upload
@ -34,6 +35,7 @@
format="YYYY-MM-DD" format="YYYY-MM-DD"
value-format="YYYY-MM-DD" value-format="YYYY-MM-DD"
placeholder="选择时间" placeholder="选择时间"
clearable
/> />
</el-form-item> </el-form-item>
</el-form> </el-form>
@ -45,14 +47,13 @@
</template> </template>
<script setup> <script setup>
import { onMounted, ref, toRaw } from "vue"; import { ref, toRaw } from "vue";
import { useVModels } from "@vueuse/core"; import { useVModels } from "@vueuse/core";
import { ElMessage } from "element-plus"; import { ElMessage } from "element-plus";
import LayoutUpload from "@/components/upload/index.vue"; import LayoutUpload from "@/components/upload/index.vue";
import { import {
addProductionView, addProductionView,
editProductionView, editProductionView,
getSafetyProductionList,
} from "@/request/traffic_safety_production.js"; } from "@/request/traffic_safety_production.js";
const props = defineProps({ const props = defineProps({
@ -89,15 +90,6 @@ const rules = {
SYSTEMNAME: [{ required: true, message: "请输入名称", trigger: "blur" }], SYSTEMNAME: [{ required: true, message: "请输入名称", trigger: "blur" }],
}; };
const operatingCompany = ref("");
const operationType = ref("");
onMounted(async () => {
const resData = await getSafetyProductionList();
if (resData && resData.varList && resData.varList.length > 0) {
operatingCompany.value = resData.varList[0].CORP_NAME;
operationType.value = resData.varList[0].OPERATIONTYPE;
}
});
const formRef = ref(null); const formRef = ref(null);
const fnClose = () => { const fnClose = () => {
formRef.value.resetFields(); formRef.value.resetFields();

View File

@ -9,12 +9,12 @@
<el-row> <el-row>
<el-col :span="6"> <el-col :span="6">
<el-form-item label="名称" prop="SYSTEMNAME"> <el-form-item label="名称" prop="SYSTEMNAME">
<el-input v-model="searchForm.SYSTEMNAME" /> <el-input v-model="searchForm.SYSTEMNAME" clearable />
</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"> <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>
@ -22,7 +22,7 @@
</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"> <el-select v-model="searchForm.VALIDSTATUS" 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>
@ -90,7 +90,7 @@
<el-button <el-button
text text
link link
type="primary" type="danger"
@click="deleteItem(row.SAFETYPRODUCTION_ID)" @click="deleteItem(row.SAFETYPRODUCTION_ID)"
> >
删除 删除
@ -150,7 +150,15 @@ const fnAddOrEdit = async (SAFETYPRODUCTION_ID = "", type = "add") => {
data.addOrEditDialog.visible = true; data.addOrEditDialog.visible = true;
data.addOrEditDialog.type = type; data.addOrEditDialog.type = type;
if (type === "edit" && SAFETYPRODUCTION_ID) { if (type === "edit" && SAFETYPRODUCTION_ID) {
data.addOrEditDialog.form.SAFETYPRODUCTION_ID = SAFETYPRODUCTION_ID; const resData = await getSafetyProductionList({ SAFETYPRODUCTION_ID });
if (resData && resData.varList && resData.varList.length > 0) {
const detail = resData.varList[0];
data.addOrEditDialog.form = {
...detail,
OPERATINGCOMPANY: detail.CORP_NAME,
EXPIRYDATE: detail.EXPIRYDATE,
};
}
} else { } else {
data.addOrEditDialog.form = {}; data.addOrEditDialog.form = {};
} }

View File

@ -13,6 +13,7 @@
<el-input <el-input
v-model="data.form.MEETING_TITLE" v-model="data.form.MEETING_TITLE"
placeholder="请输入会议标题" placeholder="请输入会议标题"
clearable
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -21,6 +22,7 @@
<el-select <el-select
v-model="data.form.MEETING_TYPE" v-model="data.form.MEETING_TYPE"
placeholder="请选择会议类型" placeholder="请选择会议类型"
clearable
@change="handleMeetingTypeChange" @change="handleMeetingTypeChange"
> >
<el-option <el-option
@ -37,6 +39,7 @@
<el-input <el-input
v-model="data.form.MEETING_ADDRESS" v-model="data.form.MEETING_ADDRESS"
placeholder="请输入会议地点" placeholder="请输入会议地点"
clearable
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -49,6 +52,7 @@
value-format="YYYY-MM-DD" value-format="YYYY-MM-DD"
start-placeholder="开始时间" start-placeholder="开始时间"
end-placeholder="结束时间" end-placeholder="结束时间"
clearable
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -57,12 +61,17 @@
<el-input <el-input
v-model="data.form.HOST_PERSON" v-model="data.form.HOST_PERSON"
placeholder="请输入主持人" placeholder="请输入主持人"
clearable
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="记录人" prop="RECORDER"> <el-form-item label="记录人" prop="RECORDER">
<el-input v-model="data.form.RECORDER" placeholder="请输入记录人" /> <el-input
v-model="data.form.RECORDER"
placeholder="请输入记录人"
clearable
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">

View File

@ -9,12 +9,12 @@
<el-row> <el-row>
<el-col :span="6"> <el-col :span="6">
<el-form-item label="会议标题" prop="MEETING_TITLE"> <el-form-item label="会议标题" prop="MEETING_TITLE">
<el-input v-model="searchForm.MEETING_TITLE" /> <el-input v-model="searchForm.MEETING_TITLE" clearable />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6"> <el-col :span="6">
<el-form-item label="会议类型" prop="MEETING_TYPE"> <el-form-item label="会议类型" prop="MEETING_TYPE">
<el-select v-model="searchForm.MEETING_TYPE"> <el-select v-model="searchForm.MEETING_TYPE" clearable>
<el-option <el-option
v-for="item in MEETINGTYPEMENU" v-for="item in MEETINGTYPEMENU"
:key="item.id" :key="item.id"

View File

@ -10,12 +10,20 @@
<el-row> <el-row>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="通知标题" prop="TITLE"> <el-form-item label="通知标题" prop="TITLE">
<el-input v-model="data.form.TITLE" placeholder="请输入内容" /> <el-input
v-model="data.form.TITLE"
placeholder="请输入内容"
clearable
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="5"> <el-col :span="5">
<el-form-item label="通知等级" prop="LEVEL"> <el-form-item label="通知等级" prop="LEVEL">
<el-select v-model="data.form.LEVEL" placeholder="请选择通知等级"> <el-select
v-model="data.form.LEVEL"
placeholder="请选择通知等级"
clearable
>
<el-option <el-option
v-for="item in relatedClassificationList" v-for="item in relatedClassificationList"
:key="item.BIANMA" :key="item.BIANMA"

View File

@ -9,12 +9,12 @@
<el-row> <el-row>
<el-col :span="6"> <el-col :span="6">
<el-form-item label="通知标题" prop="TITLE"> <el-form-item label="通知标题" prop="TITLE">
<el-input v-model="searchForm.TITLE" /> <el-input v-model="searchForm.TITLE" clearable />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6"> <el-col :span="6">
<el-form-item label="回复状态" prop="REPLYSTATUS"> <el-form-item label="回复状态" prop="REPLYSTATUS">
<el-select v-model="searchForm.REPLYSTATUS"> <el-select v-model="searchForm.REPLYSTATUS" clearable>
<el-option label="已回复" :value="1" /> <el-option label="已回复" :value="1" />
<!-- 1代表已回复 --> <!-- 1代表已回复 -->
<el-option label="未回复" :value="0" /> <el-option label="未回复" :value="0" />
@ -24,7 +24,7 @@
</el-col> </el-col>
<el-col :span="6"> <el-col :span="6">
<el-form-item label="通知等级" prop="RISKUNITNAME"> <el-form-item label="通知等级" prop="RISKUNITNAME">
<el-select v-model="searchForm.RISKUNITNAME"> <el-select v-model="searchForm.RISKUNITNAME" clearable>
<el-option <el-option
v-for="item in relatedClassificationList" v-for="item in relatedClassificationList"
:key="item.BIANMA" :key="item.BIANMA"

View File

@ -14,6 +14,7 @@
v-model="form.RESPONSIBILITYNAME" v-model="form.RESPONSIBILITYNAME"
placeholder="请输入岗位安全责任书" placeholder="请输入岗位安全责任书"
style="width: 300px" style="width: 300px"
clearable
></el-input> ></el-input>
</el-form-item> </el-form-item>
<el-form-item <el-form-item
@ -21,7 +22,7 @@
label="经营企业" label="经营企业"
prop="OPERATINGCOMPANY" prop="OPERATINGCOMPANY"
> >
<span>{{ operatingCompany }}</span> <span>{{ form.OPERATINGCOMPANY }}</span>
</el-form-item> </el-form-item>
<el-form-item label="岗位安全责任书" prop="file"> <el-form-item label="岗位安全责任书" prop="file">
<layout-upload <layout-upload
@ -38,14 +39,17 @@
format="YYYY-MM-DD" format="YYYY-MM-DD"
value-format="YYYY-MM-DD" value-format="YYYY-MM-DD"
placeholder="选择时间" placeholder="选择时间"
style="width: 200px"
clearable
/> />
</el-form-item> </el-form-item>
<el-form-item label="备注" prop="MEETING_CONTENT"> <el-form-item label="备注" prop="CONTENT">
<el-input <el-input
v-model="form.MEETING_CONTENT" v-model="form.CONTENT"
type="textarea" type="textarea"
placeholder="请输入内容" placeholder="请输入内容"
style="width: 300px" style="width: 300px"
clearable
></el-input> ></el-input>
</el-form-item> </el-form-item>
</el-form> </el-form>
@ -57,14 +61,13 @@
</template> </template>
<script setup> <script setup>
import { onMounted, ref, toRaw } from "vue"; import { ref, toRaw } from "vue";
import { useVModels } from "@vueuse/core"; import { useVModels } from "@vueuse/core";
import { ElMessage } from "element-plus"; import { ElMessage } from "element-plus";
import LayoutUpload from "@/components/upload/index.vue"; import LayoutUpload from "@/components/upload/index.vue";
import { import {
addResponsibilityView, addResponsibilityView,
editResponsibilityView, editResponsibilityView,
getSafetyResponsibilityList,
} from "@/request/traffic_safety_responsibility.js"; } from "@/request/traffic_safety_responsibility.js";
const props = defineProps({ const props = defineProps({
@ -105,13 +108,6 @@ const rules = {
], ],
}; };
const operatingCompany = ref("");
onMounted(async () => {
const resData = await getSafetyResponsibilityList();
if (resData && resData.varList && resData.varList.length > 0) {
operatingCompany.value = resData.varList[0].CORP_NAME;
}
});
const formRef = ref(null); const formRef = ref(null);
const fnClose = () => { const fnClose = () => {
formRef.value.resetFields(); formRef.value.resetFields();

View File

@ -67,7 +67,7 @@
<el-button <el-button
text text
link link
type="primary" type="danger"
@click="deleteItem(row.SAFETYRESPONSIBILITY_ID)" @click="deleteItem(row.SAFETYRESPONSIBILITY_ID)"
> >
删除 删除
@ -111,6 +111,7 @@ import Add from "@/views/safety_responsibility/components/add.vue";
import LayoutPdf from "@/components/pdf/index.vue"; import LayoutPdf from "@/components/pdf/index.vue";
import { import {
deleteResponsibilityView, deleteResponsibilityView,
getSafetyResponsibilityList,
getSafetyResponsibilityUserList, getSafetyResponsibilityUserList,
} from "@/request/traffic_safety_responsibility.js"; } from "@/request/traffic_safety_responsibility.js";
@ -154,7 +155,18 @@ const fnAddOrEdit = async (
data.addOrEditDialog.type = type; data.addOrEditDialog.type = type;
data.addOrEditDialog.form = {}; data.addOrEditDialog.form = {};
if (type === "edit" && SAFETYRESPONSIBILITY_ID) { if (type === "edit" && SAFETYRESPONSIBILITY_ID) {
data.addOrEditDialog.form.SAFETYRESPONSIBILITY_ID = SAFETYRESPONSIBILITY_ID; const resData = await getSafetyResponsibilityList({
SAFETYRESPONSIBILITY_ID,
});
if (resData && resData.varList && resData.varList.length > 0) {
const detail = resData.varList.find(
(detail) => detail.USER_ID === USER_ID
);
data.addOrEditDialog.form = {
...detail,
OPERATINGCOMPANY: detail.CORP_NAME,
};
}
} else { } else {
data.addOrEditDialog.form = { USER_ID }; data.addOrEditDialog.form = { USER_ID };
} }

View File

@ -13,12 +13,12 @@
prop="RESPONSIBILITYNAME" prop="RESPONSIBILITYNAME"
label-width="120px" label-width="120px"
> >
<el-input v-model="searchForm.RESPONSIBILITYNAME" /> <el-input v-model="searchForm.RESPONSIBILITYNAME" clearable />
</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"> <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>
@ -26,7 +26,7 @@
</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"> <el-select v-model="searchForm.VALIDSTATUS" 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>
@ -56,12 +56,13 @@
{{ serialNumber(pagination, $index) }} {{ serialNumber(pagination, $index) }}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="NEWCONTRACTNAME" label="用户名称" width="100" />
<el-table-column <el-table-column
prop="NEWCONTRACTNAME" prop="RESPONSIBILITYNAME"
label="岗位安全责任书" label="岗位安全责任书"
width="250" width="250"
/> />
<el-table-column prop="COMPLETIONSTATUS" label="完成状态" width="250"> <el-table-column prop="COMPLETIONSTATUS" label="完成状态" width="100">
<template #default="{ row }"> <template #default="{ row }">
<el-tag v-if="row.COMPLETIONSTATUS === '1'"></el-tag> <el-tag v-if="row.COMPLETIONSTATUS === '1'"></el-tag>
<el-tag v-else></el-tag> <el-tag v-else></el-tag>
@ -154,7 +155,7 @@ const data = reactive({
watchEffect(() => { watchEffect(() => {
if (list.value.length > 0) { if (list.value.length > 0) {
list.value.forEach((item) => { list.value.forEach((item) => {
item.NEWCONTRACTNAME = `${item.NAME} 岗位安全责任书`; item.NEWCONTRACTNAME = `${item.NAME}`;
}); });
} }
}); });

View File

@ -9,10 +9,12 @@
v-if="type === 'add'" v-if="type === 'add'"
label="承诺书名称" label="承诺书名称"
prop="COMMITMENTNAME" prop="COMMITMENTNAME"
clearable
> >
<el-input <el-input
v-model="form.COMMITMENTNAME" v-model="form.COMMITMENTNAME"
placeholder="请输入承诺书名称" placeholder="请输入承诺书名称"
clearable
style="width: 300px" style="width: 300px"
></el-input> ></el-input>
</el-form-item> </el-form-item>
@ -21,7 +23,7 @@
label="经营企业" label="经营企业"
prop="OPERATINGCOMPANY" prop="OPERATINGCOMPANY"
> >
<span>{{ operatingCompany }}</span> <span>{{ form.OPERATINGCOMPANY }}</span>
</el-form-item> </el-form-item>
<el-form-item label="承诺书文件" prop="file"> <el-form-item label="承诺书文件" prop="file">
<layout-upload <layout-upload
@ -39,11 +41,12 @@
value-format="YYYY-MM-DD" value-format="YYYY-MM-DD"
placeholder="选择时间" placeholder="选择时间"
style="width: 200px" style="width: 200px"
clearable
/> />
</el-form-item> </el-form-item>
<el-form-item label="备注" prop="MEETING_CONTENT"> <el-form-item label="备注" prop="CONTENT">
<el-input <el-input
v-model="form.MEETING_CONTENT" v-model="form.CONTENT"
type="textarea" type="textarea"
placeholder="请输入内容" placeholder="请输入内容"
style="width: 300px" style="width: 300px"
@ -58,14 +61,13 @@
</template> </template>
<script setup> <script setup>
import { onMounted, ref, toRaw } from "vue"; import { ref, toRaw } from "vue";
import { useVModels } from "@vueuse/core"; import { useVModels } from "@vueuse/core";
import { ElMessage } from "element-plus"; import { ElMessage } from "element-plus";
import LayoutUpload from "@/components/upload/index.vue"; import LayoutUpload from "@/components/upload/index.vue";
import { import {
addCommitmentView, addCommitmentView,
editCommitmentView, editCommitmentView,
getSafetyCommitmentList,
} from "@/request/traffic_safety_commitment.js"; } from "@/request/traffic_safety_commitment.js";
const props = defineProps({ const props = defineProps({
@ -105,14 +107,6 @@ const rules = {
{ required: true, message: "请输入承诺书名称", trigger: "blur" }, { required: true, message: "请输入承诺书名称", trigger: "blur" },
], ],
}; };
const operatingCompany = ref("");
onMounted(async () => {
const resData = await getSafetyCommitmentList();
if (resData && resData.varList && resData.varList.length > 0) {
operatingCompany.value = resData.varList[0].CORP_NAME;
}
});
const formRef = ref(null); const formRef = ref(null);
const fnClose = () => { const fnClose = () => {
formRef.value.resetFields(); formRef.value.resetFields();

View File

@ -67,7 +67,7 @@
<el-button <el-button
text text
link link
type="primary" type="danger"
@click="deleteItem(row.SECURITYCOMMITMENT_ID)" @click="deleteItem(row.SECURITYCOMMITMENT_ID)"
> >
删除 删除
@ -105,6 +105,7 @@
import { useRoute } from "vue-router"; import { useRoute } from "vue-router";
import { import {
deleteCommitmentView, deleteCommitmentView,
getSafetyCommitmentList,
getSafetyCommitmentUserList, getSafetyCommitmentUserList,
} from "@/request/traffic_safety_commitment.js"; } from "@/request/traffic_safety_commitment.js";
import useListData from "@/assets/js/useListData.js"; import useListData from "@/assets/js/useListData.js";
@ -154,9 +155,20 @@ const fnAddOrEdit = async (
) => { ) => {
data.addOrEditDialog.visible = true; data.addOrEditDialog.visible = true;
data.addOrEditDialog.type = type; data.addOrEditDialog.type = type;
data.addOrEditDialog.form = {}; if (type === "edit" && SECURITYCOMMITMENT_ID && USER_ID) {
if (type === "edit" && SECURITYCOMMITMENT_ID) { const resData = await getSafetyCommitmentList({
data.addOrEditDialog.form.SECURITYCOMMITMENT_ID = SECURITYCOMMITMENT_ID; SECURITYCOMMITMENT_ID,
USER_ID,
});
if (resData && resData.varList && resData.varList.length > 0) {
const detail = resData.varList.find(
(detail) => detail.USER_ID === USER_ID
);
data.addOrEditDialog.form = {
...detail,
OPERATINGCOMPANY: detail.CORP_NAME,
};
}
} else { } else {
data.addOrEditDialog.form = { USER_ID }; data.addOrEditDialog.form = { USER_ID };
} }

View File

@ -9,12 +9,12 @@
<el-row> <el-row>
<el-col :span="6"> <el-col :span="6">
<el-form-item label="承诺书名称" prop="COMMITMENTNAME"> <el-form-item label="承诺书名称" prop="COMMITMENTNAME">
<el-input v-model="searchForm.COMMITMENTNAME" /> <el-input v-model="searchForm.COMMITMENTNAME" clearable />
</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"> <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>
@ -22,7 +22,7 @@
</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"> <el-select v-model="searchForm.VALIDSTATUS" 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>
@ -54,10 +54,11 @@
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="NEWCOMMITMENTNAME" prop="NEWCOMMITMENTNAME"
label="承诺书名称" label="用户名称"
width="250" width="100"
/> />
<el-table-column prop="COMPLETIONSTATUS" label="完成状态" width="250"> <el-table-column prop="COMMITMENTNAME" label="承诺书名称" width="250" />
<el-table-column prop="COMPLETIONSTATUS" label="完成状态" width="100">
<template #default="{ row }"> <template #default="{ row }">
<el-tag v-if="row.COMPLETIONSTATUS === '1'"></el-tag> <el-tag v-if="row.COMPLETIONSTATUS === '1'"></el-tag>
<el-tag v-else></el-tag> <el-tag v-else></el-tag>
@ -150,7 +151,7 @@ const data = reactive({
watchEffect(() => { watchEffect(() => {
if (list.value.length > 0) { if (list.value.length > 0) {
list.value.forEach((item) => { list.value.forEach((item) => {
item.NEWCOMMITMENTNAME = `${item.NAME} 安全承诺书`; item.NEWCOMMITMENTNAME = `${item.NAME}`;
}); });
} }
}); });