From d50a7c8a357b0d1d327e608a782f896f2ea139d8 Mon Sep 17 00:00:00 2001 From: buaixuexideshitongxue <2936013465@qq.com> Date: Sun, 4 Jan 2026 16:08:11 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=A1=E8=AE=A1=E9=A2=84=E8=AD=A6=E4=B8=8B?= =?UTF-8?q?=E6=8B=89=E6=A1=86=E6=94=AF=E6=8C=81=E5=A4=8D=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/warning/edit.vue | 498 +++++++++++++++++++++---------------- 1 file changed, 282 insertions(+), 216 deletions(-) diff --git a/src/views/warning/edit.vue b/src/views/warning/edit.vue index 5ce6a52..3988d66 100644 --- a/src/views/warning/edit.vue +++ b/src/views/warning/edit.vue @@ -25,64 +25,62 @@ import warningDetail from './components/detail.vue' import dayjs from "dayjs"; - const warningCode = ref("warning") const dialog = ref(false) -const endDialog =ref(false) +const endDialog = ref(false) const finishDialog = ref(false) const catchStore = useCatchStore(); const dict = catchStore.getDicts(["procurementMethod"]); const userStore = useUserStore(); -const reportFlowDialog= ref(false) -const reportFlowLoading =ref(false) +const reportFlowDialog = ref(false) +const reportFlowLoading = ref(false) const isAudit = ref(false) const reportFlowTable = ref([]) const loading = ref(false) const rejectDialog = ref(false) -const node =ref() +const node = ref() const formData = ref({ - reportProject:{ - }, - record:{ - warningSupervision:null, - supervisionTime:null, - evidenceOffer:null + reportProject: {}, + record: { + warningSupervision: null, + supervisionTime: null, + evidenceOffer: null }, - contents:[] + contents: [] }) const formDataRef = ref() -const isDisabled =ref(true) -const isEndData =ref(false) +const isDisabled = ref(true) +const isEndData = ref(false) const activeName = ref(false) const route = useRoute() -const router =useRouter(); -const rules =ref({ +const router = useRouter(); +const rules = ref({ // evidenceOffer:[ {required: true, message: '请选择证据提供者', trigger: 'blur'}], - supervisionTime:[ {required: true, message: '请选择预警监督日期 ', trigger: 'blur'}], - warningSupervision:[ {required: true, message: '请选择预警监督人员', trigger: 'blur'}], + supervisionTime: [{required: true, message: '请选择预警监督日期 ', trigger: 'blur'}], + warningSupervision: [{required: true, message: '请选择预警监督人员', trigger: 'blur'}], }) -const tableRowClassName = ({row}) =>{ +const tableRowClassName = ({row}) => { if (row.remark) { return 'warning-row' } return '' } //获取用户信息 -const getReportDetailFun =async (id)=>{ - const res = await getDetail({id:id}) - isEndData.value = res.project.reportType === '结算项目' - formData.value.reportProject=res.project; +const getReportDetailFun = async (id) => { + const res = await getDetail({id: id}) + isEndData.value = res.project.reportType === '结算项目' + formData.value.reportProject = res.project; //获取最新审计 - const data = await getWarningRecord(id); - if(data){ + const data = await getWarningRecord(id); + if (data) { await getWarningDetailFun(data.id) - }else{ + } else { //获取历史记录 console.log("==============") console.log(res.project) - res.project.warningState=="1"? recordDisplay.value=true: recordDisplay.value=false + res.project.warningState == "1" ? recordDisplay.value = true : recordDisplay.value = false } } @@ -106,56 +104,56 @@ function getPoliceList() { getPoliceList() -const detailProps=ref({}) +const detailProps = ref({}) -const DetailReport =()=>{ +const DetailReport = () => { //判断是否为报审人 - detailProps.value ={ + detailProps.value = { isEnd: formData.value.reportProject.reportType === "项目控制价", id: formData.value.reportProject.id, - backPath:'/entryWindow', - node : formData.value.reportProject.node + backPath: '/entryWindow', + node: formData.value.reportProject.node } - detailShow.value=true; + detailShow.value = true; } -const closeDialogFun = ()=>{ - dialog.value=false - rejectDialog.value=false +const closeDialogFun = () => { + dialog.value = false + rejectDialog.value = false } -const closeAuditDialogFun = ()=>{ - dialog.value=false - rejectDialog.value=false - finishDialog.value=false +const closeAuditDialogFun = () => { + dialog.value = false + rejectDialog.value = false + finishDialog.value = false // isAudit.value=false - endDialog.value=false; + endDialog.value = false; } //通知报审人 -const warningInformFun = async ()=>{ +const warningInformFun = async () => { await formDataRef.value.validate(); - loading.value=true; + loading.value = true; formData.value.isSubmit = 1; - formData.value.code ="inform"; - formData.value.node= "inform"; - node.value="inform"; + formData.value.code = "inform"; + formData.value.node = "inform"; + node.value = "inform"; const res = await addOrUpData(formData.value) - formData.value =res; - warningCode.value="inform"; + formData.value = res; + warningCode.value = "inform"; feedback.msgSuccess("保存成功") delete formData.value.isSubmit; - delete formData.value.code; - loading.value=false; - dialog.value=true + delete formData.value.code; + loading.value = false; + dialog.value = true } //结束预警 -const auditEndWarning = async ()=>{ +const auditEndWarning = async () => { await formDataRef.value.validate(); - loading.value=true; - const body={ - reportId:formData.value.reportProject.id + loading.value = true; + const body = { + reportId: formData.value.reportProject.id } - const res= await auditEndWarningApi(body) + const res = await auditEndWarningApi(body) feedback.msgSuccess("操作成功") router.push({ path: "/warning", @@ -163,29 +161,29 @@ const auditEndWarning = async ()=>{ refresh: Date.now() } }) - loading.value=false; + loading.value = false; } -const closePage = ()=>{ +const closePage = () => { if (route.query.isEdit) { //回到列表页 - router.push({path:route.query.backPath}) + router.push({path: route.query.backPath}) } else { - router.push({path:"/work", query:{"load": true}}) + router.push({path: "/work", query: {"load": true}}) } } //保存 -const addOrUpDataFun = async ()=>{ - try{ - await formDataRef.value.validate(); - loading.value=true; - formData.value.code ="warning"; - const res = await addOrUpData(formData.value) - formData.value =res; - feedback.msgSuccess("保存成功") - delete formData.value.code; - loading.value=false; - } catch (err){ +const addOrUpDataFun = async () => { + try { + await formDataRef.value.validate(); + loading.value = true; + formData.value.code = "warning"; + const res = await addOrUpData(formData.value) + formData.value = res; + feedback.msgSuccess("保存成功") + delete formData.value.code; + loading.value = false; + } catch (err) { // ② 校验不通过的提示 feedback.msgError("请完善必填项后再提交"); @@ -198,71 +196,71 @@ const addOrUpDataFun = async ()=>{ } //提交至领导 -async function SubmitFun(){ +async function SubmitFun() { await formDataRef.value.validate(); await feedback.confirm("是否提交审计数据?"); - loading.value=true; + loading.value = true; formData.value.isSubmit = 1; - formData.value.code ="warning"; - formData.value.node= "leader"; + formData.value.code = "warning"; + formData.value.node = "leader"; const res = await addOrUpData(formData.value) - formData.value =res; + formData.value = res; delete formData.value.isSubmit; - delete formData.value.code; - loading.value=false; - dialog.value=true + delete formData.value.code; + loading.value = false; + dialog.value = true } //获取审计信息 -const getWarningDetailFun = async (warningId)=>{ - loading.value=true; - const res = await getWarningDetail(warningId); - formData.value.reportProject =res.reportProject - formData.value.record= res.record; +const getWarningDetailFun = async (warningId) => { + loading.value = true; + const res = await getWarningDetail(warningId); + formData.value.reportProject = res.reportProject + formData.value.record = res.record; formData.value.contents = res.contents; //已提交的数据 - if((formData.value.record.node && formData.value.record.node != 'stat') - ||(formData.value.record.informNode && formData.value.record.informNode != 'state' && formData.value.record.informNode != 'end') - ){ - recordDisplay.value=true + if ((formData.value.record.node && formData.value.record.node != 'stat') + || (formData.value.record.informNode && formData.value.record.informNode != 'state' && formData.value.record.informNode != 'end') + ) { + recordDisplay.value = true } - console.log('recordDisplay',recordDisplay.value) + console.log('recordDisplay', recordDisplay.value) //如果为审核页面 - if(route.query.isAudit){ - isAudit.value=true - isDisabled.value=true - switch (formData.value.record.node){ + if (route.query.isAudit) { + isAudit.value = true + isDisabled.value = true + switch (formData.value.record.node) { case "leader": - node.value="end"; + node.value = "end"; break; } } ensureSupervisionTime(); - loading.value=false + loading.value = false } -const rejectFun = ()=>{ - rejectDialog.value=true; +const rejectFun = () => { + rejectDialog.value = true; } -const passFun = () =>{ - finishDialog.value=true; +const passFun = () => { + finishDialog.value = true; } -const passInformFun = ()=>{ - endDialog.value=true; +const passInformFun = () => { + endDialog.value = true; } -const FinishSubmitFeedback =()=>{ - finishDialog.value=false +const FinishSubmitFeedback = () => { + finishDialog.value = false closePage() } -const endSubmitFeedback =()=>{ - endDialog.value=false; +const endSubmitFeedback = () => { + endDialog.value = false; closePage() } -const FinishCloseAuditDialogFun=()=>{ - finishDialog.value=false +const FinishCloseAuditDialogFun = () => { + finishDialog.value = false closePage() } //审批通过 @@ -271,97 +269,96 @@ const submitFeedback = () => { closePage() } //审批记录 -async function getAuditTableFun(){ +async function getAuditTableFun() { //打开审批记录 reportFlowDialog.value = true - reportFlowLoading.value=true - const res = await getReportFlow({id:formData.value.record.id,code:'warning'}); - reportFlowLoading.value=false + reportFlowLoading.value = true + const res = await getReportFlow({id: formData.value.record.id, code: 'warning'}); + reportFlowLoading.value = false reportFlowTable.value = res; } -async function getAuditTableInformFun(type){ +async function getAuditTableInformFun(type) { //打开审批记录 reportFlowDialog.value = true - reportFlowLoading.value=true + reportFlowLoading.value = true let res; - if (type){ - res= await getReportFlow({id:formData.value.reportProject.id,code:type}); - }else { - res = await getReportFlow({id:formData.value.record.id,code:'inform'}); + if (type) { + res = await getReportFlow({id: formData.value.reportProject.id, code: type}); + } else { + res = await getReportFlow({id: formData.value.record.id, code: 'inform'}); } - reportFlowLoading.value=false + reportFlowLoading.value = false reportFlowTable.value = res; } - //打开督审记录窗口 const warningDetailDiaglog = ref(false) -const warningTable = ref() -const getWarningRecordFun = async ()=>{ - warningDetailDiaglog.value=true; - const res = await getWarningAudit(formData.value.reportProject.id); - warningTable.value=res; +const warningTable = ref() +const getWarningRecordFun = async () => { + warningDetailDiaglog.value = true; + const res = await getWarningAudit(formData.value.reportProject.id); + warningTable.value = res; } const informDialog = ref(false) -const getWarningInformDataFun = ()=>{ - informDialog.value=true; +const getWarningInformDataFun = () => { + informDialog.value = true; } //获取反馈内容 const informTable = ref([]) -const informLoading =ref(false); -const getWarningInformFun =async (id)=>{ - informLoading.value=true; +const informLoading = ref(false); +const getWarningInformFun = async (id) => { + informLoading.value = true; const res = await getWarningInformList(id); - informTable.value=res; - informLoading.value=false; + informTable.value = res; + informLoading.value = false; } -const closeDetailShow =()=>{ - detailShow.value=false +const closeDetailShow = () => { + detailShow.value = false } -const detailShow =ref(false) +const detailShow = ref(false) const recordDisplay = ref(false); const codeData = ref(); getPoliceList(); -onMounted(()=>{ +onMounted(() => { //获取项目信息 - if(route.query.reportId){ + if (route.query.reportId) { //判断是否为编辑状态 - if(route.query.isEnd){ - formData.value.contents = AuditRuleEnums + if (route.query.isEnd) { + formData.value.contents = AuditRuleEnums } - if(route.query.warningCode && route.query.warningCode ==="inform"){ - codeData.value="inform" - warningCode.value="inform" + if (route.query.warningCode && route.query.warningCode === "inform") { + codeData.value = "inform" + warningCode.value = "inform" } formData.value.record.warningSupervisionId = userStore.user.userName; formData.value.record.warningSupervision = userStore.user.nickName; - query.value.name= formData.value.record.warningSupervision; + query.value.name = formData.value.record.warningSupervision; ensureSupervisionTime(); getReportDetailFun(route.query.reportId) getWarningInformFun(route.query.reportId) - }else{ + } else { closePage(); } }) -watch(()=>formData.value.record.warningSupervisionId,(val)=>{ +watch(() => formData.value.record.warningSupervisionId, (val) => { - if(val && polices.value.length > 0 && polices.value.filter(s=>s.idCode === val).length > 0){ - formData.value.record.warningSupervision =polices.value.filter(s=>s.idCode === val)[0].name; + if (val && polices.value.length > 0 && polices.value.filter(s => s.idCode === val).length > 0) { + formData.value.record.warningSupervision = polices.value.filter(s => s.idCode === val)[0].name; } -},{deep:true,immediate:true}) +}, {deep: true, immediate: true}) //缺少项目id以后,关闭tab // watch(() => route.query.reportId, (val) => { // if(!val){ @@ -369,8 +366,8 @@ watch(()=>formData.value.record.warningSupervisionId,(val)=>{ // } // }, {deep: true, immediate: true}) //结算项目情况下 todo -const timeAlertFun=(rowName)=>{ - const { reportProject } = formData.value; +const timeAlertFun = (rowName) => { + const {reportProject} = formData.value; if (!reportProject?.[rowName]) return false; // 时间校验逻辑 const timeChain = { @@ -385,7 +382,7 @@ const timeAlertFun=(rowName)=>{ const nextTime = index === dependencies.length - 1 ? reportProject[rowName] : reportProject[dependencies[index + 1]]; - return prevTime && nextTime && prevTime< nextTime; + return prevTime && nextTime && prevTime < nextTime; }); } @@ -411,13 +408,25 @@ const ensureSupervisionTime = () => {
- + - - - + + + + + + + @@ -428,26 +437,47 @@ const ensureSupervisionTime = () => { - - - - - + + + + + + - + + + - + + @@ -462,14 +492,23 @@ const ensureSupervisionTime = () => { - + - - + + + @@ -486,7 +525,8 @@ const ensureSupervisionTime = () => { /> - + @@ -502,7 +542,7 @@ const ensureSupervisionTime = () => { - + @@ -553,12 +593,12 @@ const ensureSupervisionTime = () => { - - + + - - + + { - + @@ -617,22 +658,22 @@ const ensureSupervisionTime = () => { - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + { - + - + - + @@ -666,7 +709,8 @@ const ensureSupervisionTime = () => { - @@ -691,7 +735,8 @@ const ensureSupervisionTime = () => { - + @@ -711,11 +756,11 @@ const ensureSupervisionTime = () => {
审计信息
- + - - + + @@ -726,13 +771,13 @@ const ensureSupervisionTime = () => {
-
+
保存 - + 签收审批记录 结束 提交至领导 - 取消 + 取消
领导审批记录 @@ -746,15 +791,15 @@ const ensureSupervisionTime = () => {
- + @@ -776,12 +821,12 @@ const ensureSupervisionTime = () => { @@ -804,9 +849,9 @@ const ensureSupervisionTime = () => { - + @@ -815,7 +860,8 @@ const ensureSupervisionTime = () => { - + { > + :isWarning="warningCode" :reportId="formData.record.id" :dialog="rejectDialog" + :isAudit="false">
-