odf_new/web/assets/pages-fault-detail-index.T1B0G7fA.js
zpc a96ccf846c
All checks were successful
continuous-integration/drone/push Build is passing
21
2026-03-31 15:52:07 +08:00

2 lines
7.1 KiB
JavaScript

import{g as a,e,f as l,y as t,c as s,w as o,s as n,i,o as u,a as c,n as r,u as f,b as d,q as m,v as _,F as v,h as p,t as g,j as b,l as h,d as k,S as C,I as y,B as w,D as T}from"./index-Dx2tKjbE.js";import{_ as x}from"./home_bg.BmQJoAoC.js";import{_ as j}from"./ic_back.BKIFUCMS.js";import{o as N}from"./uni-app.es.hrB0jJrX.js";import{b as F,i as q,u as I}from"./trunk.D82df_9u.js";import{B as R}from"./api.DpNQJwrU.js";import{o as B}from"./navigation.CTXUhgsb.js";import{_ as E}from"./_plugin-vue_export-helper.BCo6x5W8.js";import"./index.CpRtBALz.js";const V=E({__name:"index",setup(E){const V=a().statusBarHeight||0,L=e(""),S=e([]),U=l({}),$=l({faultTime:"",personnel:"",faultReason:"",mileage:"",cableName:"",location:"",latitude:0,longitude:0,remark:"",mileageCorrection:"",faultCount:1,faultTimes:[]}),D=e(!1),H=e(!1),M=e(""),W=e(!1),z=t((()=>{const a=[];return $.faultTime&&a.push($.faultTime),$.faultTimes&&$.faultTimes.length>0&&$.faultTimes.forEach((e=>{a.push(e.faultTime||e.FaultTime||"")})),a.sort(),a})),A=t((()=>{const a=parseFloat($.mileage),e=parseFloat($.mileageCorrection);return isNaN(a)||isNaN(e)?$.mileage||"":String(Math.round(1e4*(a+e))/1e4)})),G=t((()=>$.latitude&&$.longitude&&0!==Number($.latitude)&&0!==Number($.longitude)));function J(){b()}async function K(){if(!D.value){D.value=!0;try{const a=await q(L.value);200===a.code&&a.data?($.faultCount=a.data.faultCount,$.faultTimes=a.data.faultTimes||[],n({title:"频次已增加",icon:"success"})):n({title:a.msg||"操作失败",icon:"none"})}catch(a){n({title:"网络异常",icon:"none"})}finally{D.value=!1}}}function O(){M.value=$.mileageCorrection||"",H.value=!0}function P(){H.value=!1}async function Q(){if(!W.value){W.value=!0;try{const a=await I(L.value,M.value);200===a.code?($.mileageCorrection=M.value,H.value=!1,n({title:"保存成功",icon:"success"})):n({title:a.msg||"保存失败",icon:"none"})}catch(a){n({title:"网络异常",icon:"none"})}finally{W.value=!1}}}function X(){B($.latitude,$.longitude,$.location||"故障地点")}return N((a=>{a.faultId&&(L.value=a.faultId),async function(){try{const a=await F(L.value);if(200===a.code&&a.data){const e=a.data;$.faultTime=e.faultTime||"",$.personnel=e.personnel||"",$.faultReason=e.faultReason||"",$.mileage=e.mileage||"",$.mileageCorrection=e.mileageCorrection||"",$.cableName=e.cableName||"",$.location=e.location||"",$.latitude=e.latitude||0,$.longitude=e.longitude||0,!$.location&&$.latitude&&$.longitude&&($.location=`经度:${$.longitude} 纬度:${$.latitude}`),$.remark=e.remark||"",$.faultCount=e.faultCount||1,$.faultTimes=e.faultTimes||[],S.value=(e.images||[]).map(((a,e)=>{const l=a.url||a.imageUrl||"";return U[e]="loading",l.startsWith("http")?l:R+l}))}}catch(a){n({title:"加载失败",icon:"none"})}}()})),(a,e)=>{const l=h,t=k,n=i,b=C,N=y;return u(),s(n,{class:"fault-detail-page"},{default:o((()=>[c(l,{class:"bg-image",src:x,mode:"aspectFill"}),c(n,{class:"content"},{default:o((()=>[c(n,{class:"nav-bar",style:r({paddingTop:f(V)+"px"})},{default:o((()=>[c(n,{class:"nav-bar-inner"},{default:o((()=>[c(l,{class:"nav-icon",src:j,mode:"aspectFit",onClick:J}),c(t,{class:"nav-title"},{default:o((()=>[d("故障详情")])),_:1}),c(n,{class:"nav-icon-placeholder"})])),_:1})])),_:1},8,["style"]),S.value.length>0?(u(),s(n,{key:0,class:"image-area"},{default:o((()=>[c(b,{class:"image-scroll","scroll-x":""},{default:o((()=>[c(n,{class:"image-grid"},{default:o((()=>[(u(!0),m(v,null,_(S.value,((a,e)=>(u(),s(n,{class:"image-wrapper",key:a,onClick:a=>function(a){T({urls:S.value,current:S.value[a]})}(e)},{default:o((()=>["loaded"!==U[e]?(u(),s(n,{key:0,class:"image-placeholder"},{default:o((()=>[c(t,{class:"placeholder-text"},{default:o((()=>[d(g("error"===U[e]?"加载失败":"加载中..."),1)])),_:2},1024)])),_:2},1024)):p("",!0),c(l,{class:w(["image-item",{"image-hidden":"loaded"!==U[e]}]),src:a,mode:"aspectFill",onLoad:a=>function(a){U[a]="loaded"}(e),onError:a=>function(a){U[a]="error"}(e)},null,8,["class","src","onLoad","onError"])])),_:2},1032,["onClick"])))),128))])),_:1})])),_:1})])),_:1})):p("",!0),c(n,{class:"info-area"},{default:o((()=>[c(n,{class:"info-row"},{default:o((()=>[c(t,{class:"info-label"},{default:o((()=>[d("故障时间")])),_:1}),c(n,{class:"info-value fault-time-list"},{default:o((()=>[(u(!0),m(v,null,_(z.value,((a,e)=>(u(),s(t,{class:"fault-time-item",key:e},{default:o((()=>[d(g(a),1)])),_:2},1024)))),128))])),_:1})])),_:1}),c(n,{class:"info-row"},{default:o((()=>[c(t,{class:"info-label"},{default:o((()=>[d("故障发生频次")])),_:1}),c(n,{class:"info-value freq-row"},{default:o((()=>[c(t,{class:"freq-value"},{default:o((()=>[d(g($.faultCount),1)])),_:1}),c(n,{class:"freq-btn",onClick:K},{default:o((()=>[c(t,{class:"freq-btn-text"},{default:o((()=>[d("增加频次")])),_:1})])),_:1})])),_:1})])),_:1}),c(n,{class:"info-row"},{default:o((()=>[c(t,{class:"info-label"},{default:o((()=>[d("人员")])),_:1}),c(t,{class:"info-value"},{default:o((()=>[d(g($.personnel),1)])),_:1})])),_:1}),c(n,{class:"info-row"},{default:o((()=>[c(t,{class:"info-label"},{default:o((()=>[d("故障原因")])),_:1}),c(t,{class:"info-value"},{default:o((()=>[d(g($.faultReason),1)])),_:1})])),_:1}),c(n,{class:"info-row"},{default:o((()=>[c(t,{class:"info-label"},{default:o((()=>[d("表显故障里程")])),_:1}),c(t,{class:"info-value"},{default:o((()=>[d(g(A.value),1)])),_:1})])),_:1}),c(n,{class:"info-row"},{default:o((()=>[c(t,{class:"info-label"},{default:o((()=>[d("表显里程矫正")])),_:1}),H.value?(u(),s(n,{key:0,class:"info-value correction-row"},{default:o((()=>[c(N,{class:"correction-input",modelValue:M.value,"onUpdate:modelValue":e[0]||(e[0]=a=>M.value=a),type:"text",placeholder:"请输入","placeholder-class":"input-placeholder"},null,8,["modelValue"]),c(n,{class:"correction-btn save-btn",onClick:Q},{default:o((()=>[c(t,{class:"correction-btn-text"},{default:o((()=>[d("保存")])),_:1})])),_:1}),c(n,{class:"correction-btn cancel-btn",onClick:P},{default:o((()=>[c(t,{class:"correction-btn-text cancel-text"},{default:o((()=>[d("取消")])),_:1})])),_:1})])),_:1})):(u(),s(n,{key:1,class:"info-value correction-row"},{default:o((()=>[c(t,null,{default:o((()=>[d(g($.mileageCorrection||"未填写"),1)])),_:1}),c(n,{class:"correction-btn edit-btn",onClick:O},{default:o((()=>[c(t,{class:"correction-btn-text"},{default:o((()=>[d("修改")])),_:1})])),_:1})])),_:1}))])),_:1}),c(n,{class:"info-row"},{default:o((()=>[c(t,{class:"info-label"},{default:o((()=>[d("所属光缆")])),_:1}),c(t,{class:"info-value"},{default:o((()=>[d(g($.cableName),1)])),_:1})])),_:1}),c(n,{class:"info-row"},{default:o((()=>[c(t,{class:"info-label"},{default:o((()=>[d("地点")])),_:1}),c(t,{class:"info-value"},{default:o((()=>[d(g($.location),1)])),_:1})])),_:1}),c(n,{class:"info-row last-row"},{default:o((()=>[c(t,{class:"info-label"},{default:o((()=>[d("备注")])),_:1}),c(t,{class:"info-value"},{default:o((()=>[d(g($.remark),1)])),_:1})])),_:1})])),_:1})])),_:1}),G.value?(u(),s(n,{key:0,class:"bottom-bar"},{default:o((()=>[c(n,{class:"navigate-btn",onClick:X},{default:o((()=>[c(t,{class:"navigate-btn-text"},{default:o((()=>[d("导航至地点")])),_:1})])),_:1})])),_:1})):p("",!0)])),_:1})}}},[["__scopeId","data-v-c094c895"]]);export{V as default};