PageSourceSearch

https://smartkintai.ai/assets/ExpenseApplication-Bz2CjS9p.js

js smartkintai.ai collected 2026-10-05 15:06:44 UTC 57,868 bytes, 1 lines download raw bytes

1import{d as Se,a as tt,r as T,c as Ve,R as ce,o as at,e as p,s as o,g as l,i as x,w as u,f as a,u as ie,ba as yt,a2 as gt,F as j,j as b,k as ne,n as R,H as ct,t as d,A as V,aM as et,a7 as ft,W as w,aG as ht,ab as Dt,b as _t,P as bt,aK as kt,aL as Vt,aF as wt,a3 as xt,b8 as Tt,q as $t,a9 as nt}from"./index-C6DB0I7I.js";import{E as Mt}from"./EmployeeSideMenu-CPND92bi.js";import{e as we}from"./employeeClient-DfmVny7z.js";import{_ as st}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./authApi-gU8Bzwv7.js";import"./client-CRttDGue.js";import"./index-D5lHaTRS.js";import"./auth-jgLYqy-7.js";const it=async(r,G,O)=>{const F=new FormData;return F.append("applicationType",r),F.append("data",JSON.stringify(G)),O&&O.forEach(D=>F.append("receipts",D)),(await we.post("/employees/expenses",F,{headers:{"Content-Type":"multipart/form-data"}})).data.data},Ct=async(r={})=>{const O=(await we.get("/employees/expenses",{params:r})).data.data;return{items:(O.expenses??O.items??[]).map(D=>({...D,attachments:D.attachmentFiles??D.attachments??[]})),total:O.total??0,page:r.page??1,limit:r.limit??20}},St=async r=>{await we.delete(`/employees/expenses/${r}`)},vt=async r=>(await we.post(`/employees/expenses/${r}/cancel`)).data,Ft=async r=>(await we.get(`/employees/expenses/attachments/${r}/url`)).data.data.url,Ut=async(r,G)=>(await we.get("/employees/expenses/office-days",{params:{year:r,month:G}})).data.data,zt=async(r,G)=>(await we.get("/employees/expenses/remote-half-days",{params:{year:r,month:G}})).data.data,It=async r=>(await we.get("/employees/expenses/month-closed",{params:{yearMonth:r}})).data.data.isClosed,Yt=async(r,G)=>{const O=await we.get(`/employees/expenses/pdf/${r}/${G}`),{url:F,filename:q}=O.data.data,D=document.createElement("a");D.href=F,D.download=q,D.click()},Nt={class:"transport-daily-form"},Rt={class:"office-days-row"},Bt={class:"office-days-actions"},Et={class:"dates-list"},Lt={key:0,class:"summary"},Pt={class:"per-date-entries"},jt={class:"per-date-header"},At={class:"per-date-fields"},Gt={class:"per-date-field"},Ot={class:"per-date-field"},qt={class:"per-date-field"},Wt={class:"per-date-field"},Ht={key:0,class:"summary"},dt="transport_daily_last",Jt=Se({__name:"TransportDailyForm",props:{modelValue:{},disabled:{type:Boolean,default:!1}},emits:["update:modelValue","month-change"],setup(r,{expose:G,emit:O}){const F=r,q=O,D=new Date().toISOString().slice(0,10),E=(()=>{try{const i=localStorage.getItem(dt);if(i)return JSON.parse(i)}catch{}return{amount:0,route:"",tripType:"片道"}})(),n=tt({dates:[D],amount:E.amount||0,tripType:E.tripType||"片道",route:E.route||"",notes:""}),H=T(!1),P=(i,s)=>({date:i,amount:(s==null?void 0:s.amount)??n.amount,tripType:(s==null?void 0:s.tripType)??n.tripType,route:(s==null?void 0:s.route)??n.route,notes:(s==null?void 0:s.notes)??""}),f=tt([P(D)]),I=Ve(()=>f.filter(i=>i.date).length),$=Ve(()=>f.filter(i=>i.date).reduce((i,s)=>i+(s.amount||0),0)),Y=T(!1),B=T(D.slice(0,7)),y=T(new Set);ce(B,i=>{i&&q("month-change",i)}),ce(H,i=>{if(i){const s=n.dates.filter(Boolean),S={amount:n.amount,tripType:n.tripType,route:n.route,notes:n.notes};if(f.splice(0,f.length),s.length>0)for(const A of s)f.push(P(A,S));else f.push(P(D,S))}else{const s=f.filter(S=>S.date);if(n.dates=s.length>0?s.map(S=>S.date):[D],s.length>0){const S=s[0];n.amount=S.amount,n.tripType=S.tripType,n.route=S.route,n.notes=S.notes}}}),at(()=>{if(F.modelValue&&Object.keys(F.modelValue).length>0){const i=F.modelValue;i.dates?n.dates=[...i.dates]:i.expenseDate&&(n.dates=[i.expenseDate]),i.amount&&(n.amount=i.amount),i.tripType&&(n.tripType=i.tripType),i.route&&(n.route=i.route),i.notes!==void 0&&(n.notes=i.notes??"")}}),ce(n,i=>q("update:modelValue",{...i,dates:[...i.dates]}),{deep:!0});const g=["日","月","火","水","木","金","土"],M=i=>{const s=new Date(i+"T00:00:00");return`(${g[s.getDay()]})`},L=i=>{const s=new Date(i+"T00:00:00").getDay();return s===0?"weekday-sun":s===6?"weekday-sat":""},K=()=>{n.dates.push(D)},ue=i=>{n.dates.splice(i,1)},W=()=>{const i=f.length>0?f[f.length-1]:void 0;f.push(P(D,i?{amount:i.amount,tripType:i.tripType,route:i.route,notes:i.notes}:void 0))},N=i=>{f.splice(i,1)},v=new WeakMap,Z=(i,s)=>{if(i.tripType===s)return;const S=i.tripType;if(!i.amount||i.amount<=0){i.tripType=s,v.delete(i);return}const A=v.get(i);if(A&&A.tripType===s){i.tripType=s,i.amount=A.amount,v.delete(i);return}v.set(i,{tripType:S,amount:i.amount}),i.tripType=s,S==="片道"&&s==="往復"?i.amount=i.amount*2:S==="往復"&&s==="片道"&&(i.amount=Math.round(i.amount/2))},de=i=>{v.delete(i)},ee=()=>{if(H.value){const i=f.length>0?{amount:f[0].amount,tripType:f[0].tripType,route:f[0].route,notes:""}:void 0;f.splice(0,f.length,P(D,i))}else n.dates=[D];y.value=new Set},pe=async()=>
1{if(!B.value){w.warning("対象月を選択してください");return}const[i,s]=B.value.split("-"),S=Number(i),A=Number(s);Y.value=!0;try{const[Me,re]=await Promise.all([Ut(S,A),zt(S,A)]),_e=[...new Set([...Me,...re])].sort();if(_e.length===0){y.value=new Set,w.info("出社日のデータが見つかりませんでした");return}if(y.value=new Set(re),H.value){const ge=f.length>0?{amount:f[0].amount,tripType:f[0].tripType,route:f[0].route,notes:f[0].notes}:{amount:n.amount,tripType:n.tripType,route:n.route,notes:""};f.splice(0,f.length);for(const ke of _e)f.push(P(ke,ge))}else n.dates=_e;w.success(`${_e.length}日分の出社日を入力しました`)}catch{w.error("出社日の取得に失敗しました")}finally{Y.value=!1}};return G({getData:()=>H.value?{perDateMode:!0,entries:f.map(i=>({...i}))}:{...n,dates:[...n.dates],expenseDate:n.dates[0]??D},validate:()=>{if(H.value){const s=f.filter(S=>S.date);if(s.length===0)return w.error("日付を入力してください"),!1;for(let S=0;S<s.length;S++){const A=s[S];if(!A.amount||A.amount<1)return w.error(`${S+1}件目: 金額を入力してください`),!1;if(!A.route.trim())return w.error(`${S+1}件目: 線路を入力してください`),!1}return!0}return n.dates.filter(Boolean).length===0?(w.error("日付を入力してください"),!1):!n.amount||n.amount<1?(w.error("金額を入力してください"),!1):n.route.trim()?!0:(w.error("線路を入力してください"),!1)},saveToLocalStorage:()=>{if(H.value&&f.length>0){const i=f[0];localStorage.setItem(dt,JSON.stringify({amount:i.amount,route:i.route,tripType:i.tripType}))}else localStorage.setItem(dt,JSON.stringify({amount:n.amount,route:n.route,tripType:n.tripType}))},isPerDateMode:()=>H.value}),(i,s)=>{const S=x("el-date-picker"),A=x("el-button"),Me=x("el-tooltip"),re=x("el-form-item"),_e=x("el-switch"),ge=x("el-tag"),ke=x("el-input-number"),he=x("el-radio"),Ce=x("el-radio-group"),ve=x("el-input");return o(),p("div",Nt,[l(re,{label:"出社日"},{default:u(()=>[a("div",Rt,[l(S,{modelValue:B.value,"onUpdate:modelValue":s[0]||(s[0]=U=>B.value=U),type:"month",format:"YYYY/MM","value-format":"YYYY-MM",placeholder:"対象月",size:"small",class:"office-month-picker",disabled:r.disabled},null,8,["modelValue","disabled"]),a("div",Bt,[l(Me,{content:"自動入力",placement:"top"},{default:u(()=>[l(A,{type:"primary",size:"small",circle:"",icon:ie(yt),loading:Y.value,disabled:r.disabled,"aria-label":"自動入力",onClick:pe},null,8,["icon","loading","disabled"])]),_:1}),l(Me,{content:"リセット",placement:"top"},{default:u(()=>[l(A,{type:"warning",size:"small",circle:"",icon:ie(gt),disabled:r.disabled,"aria-label":"リセット",onClick:ee},null,8,["icon","disabled"])]),_:1})])])]),_:1}),l(re,{label:"入力モード"},{default:u(()=>[l(_e,{modelValue:H.value,"onUpdate:modelValue":s[1]||(s[1]=U=>H.value=U),"active-text":"日付ごとに入力","inactive-text":"一括入力",disabled:r.disabled},null,8,["modelValue","disabled"])]),_:1}),H.value?(o(),p(j,{key:1},[a("div",Pt,[(o(!0),p(j,null,ne(f,(U,X)=>(o(),p("div",{key:X,class:"per-date-card"},[a("div",jt,[l(S,{modelValue:U.date,"onUpdate:modelValue":te=>U.date=te,type:"date",placeholder:"日付を選択",format:"YYYY/MM/DD","value-format":"YYYY-MM-DD",style:{flex:"1"},disabled:r.disabled},null,8,["modelValue","onUpdate:modelValue","disabled"]),U.date?(o(),p("span",{key:0,class:ct(["weekday-label",L(U.date)])},d(M(U.date)),3)):b("",!0),U.date&&y.value.has(U.date)?(o(),R(ge,{key:1,size:"small",type:"warning"},{default:u(()=>[...s[11]||(s[11]=[V("在宅半日",-1)])]),_:1})):b("",!0),f.length>1?(o(),R(A,{key:2,icon:ie(et),circle:"",size:"small",type:"danger",disabled:r.disabled,onClick:te=>N(X)},null,8,["icon","disabled","onClick"])):b("",!0)]),a("div",At,[a("div",Gt,[s[12]||(s[12]=a("span",{class:"per-date-label"},"金額",-1)),l(ke,{modelValue:U.amount,"onUpdate:modelValue":te=>U.amount=te,min:1,max:1e6,placeholder:"金額",style:{width:"100%"},disabled:r.disabled,onChange:()=>de(U)},null,8,["modelValue","onUpdate:modelValue","disabled","onChange"])]),a("div",Ot,[s[15]||(s[15]=a("span",{class:"per-date-label"},"片道/往復",-1)),l(Ce,{"model-value":U.tripType,disabled:r.disabled,"onUpdate:modelValue":te=>Z(U,te)},{default:u(()=>[l(he,{value:"片道"},{default:u(()=>[...s[13]||(s[13]=[V("片道",-1)])]),_:1}),l(he,{value:"往復"},{default:u(()=>[...s[14]||(s[14]=[V("往復",-1)])]),_:1})]),_:1},8,["model-value","disabled","onUpdate:modelValue"])]),a("div",qt,[s[16]||(s[16]=a("span",{class:"per-date-label"},"線路",-1)),l(ve,{modelValue:U.route,"onUpdate:modelValue":te=>
1U.route=te,placeholder:"例: 蕨-流通センター",disabled:r.disabled},null,8,["modelValue","onUpdate:modelValue","disabled"])]),a("div",Wt,[s[17]||(s[17]=a("span",{class:"per-date-label"},"備考",-1)),l(ve,{modelValue:U.notes,"onUpdate:modelValue":te=>U.notes=te,placeholder:"備考(任意)",disabled:r.disabled},null,8,["modelValue","onUpdate:modelValue","disabled"])])])]))),128))]),l(A,{size:"small",icon:ie(ft),disabled:r.disabled,style:{"margin-top":"8px"},onClick:W},{default:u(()=>[...s[18]||(s[18]=[V(" 日付を追加 ",-1)])]),_:1},8,["icon","disabled"]),I.value>0?(o(),p("div",Ht,d(I.value)+"件 合計: ¥"+d($.value.toLocaleString()),1)):b("",!0)],64)):(o(),p(j,{key:0},[l(re,{label:"日付",required:""},{default:u(()=>[a("div",Et,[(o(!0),p(j,null,ne(n.dates,(U,X)=>(o(),p("div",{key:X,class:"date-row"},[l(S,{modelValue:n.dates[X],"onUpdate:modelValue":te=>n.dates[X]=te,type:"date",placeholder:"日付を選択",format:"YYYY/MM/DD","value-format":"YYYY-MM-DD",style:{flex:"1"},disabled:r.disabled},null,8,["modelValue","onUpdate:modelValue","disabled"]),n.dates[X]?(o(),p("span",{key:0,class:ct(["weekday-label",L(n.dates[X])])},d(M(n.dates[X])),3)):b("",!0),n.dates[X]&&y.value.has(n.dates[X])?(o(),R(ge,{key:1,size:"small",type:"warning"},{default:u(()=>[...s[7]||(s[7]=[V("在宅半日",-1)])]),_:1})):b("",!0),n.dates.length>1?(o(),R(A,{key:2,icon:ie(et),circle:"",size:"small",type:"danger",disabled:r.disabled,onClick:te=>ue(X)},null,8,["icon","disabled","onClick"])):b("",!0)]))),128)),l(A,{size:"small",icon:ie(ft),disabled:r.disabled,onClick:K},{default:u(()=>[...s[8]||(s[8]=[V(" 日付を追加 ",-1)])]),_:1},8,["icon","disabled"])])]),_:1}),l(re,{label:"金額",required:""},{default:u(()=>[l(ke,{modelValue:n.amount,"onUpdate:modelValue":s[2]||(s[2]=U=>n.amount=U),min:1,max:1e6,placeholder:"金額",style:{width:"100%"},disabled:r.disabled,onChange:s[3]||(s[3]=()=>de(n))},null,8,["modelValue","disabled"])]),_:1}),l(re,{label:"片道/往復",required:""},{default:u(()=>[l(Ce,{"model-value":n.tripType,disabled:r.disabled,"onUpdate:modelValue":s[4]||(s[4]=U=>Z(n,U))},{default:u(()=>[l(he,{value:"片道"},{default:u(()=>[...s[9]||(s[9]=[V("片道",-1)])]),_:1}),l(he,{value:"往復"},{default:u(()=>[...s[10]||(s[10]=[V("往復",-1)])]),_:1})]),_:1},8,["model-value","disabled"])]),_:1}),l(re,{label:"線路",required:""},{default:u(()=>[l(ve,{modelValue:n.route,"onUpdate:modelValue":s[5]||(s[5]=U=>n.route=U),placeholder:"例: 蕨-流通センター",disabled:r.disabled},null,8,["modelValue","disabled"])]),_:1}),l(re,{label:"備考"},{default:u(()=>[l(ve,{modelValue:n.notes,"onUpdate:modelValue":s[6]||(s[6]=U=>n.notes=U),type:"textarea",rows:2,placeholder:"備考(任意)",disabled:r.disabled},null,8,["modelValue","disabled"])]),_:1}),n.dates.length>1?(o(),p("div",Lt,d(n.dates.filter(Boolean).length)+"日分 合計: ¥"+d((n.amount*n.dates.filter(Boolean).length).toLocaleString()),1)):b("",!0)],64))])}}}),Kt=st(Jt,[["__scopeId","data-v-20d79f90"]]),Qt={class:"file-uploader"},Xt={class:"el-upload__tip"},Zt={key:0,class:"existing-files"},ea={class:"existing-file-item__name"},ta={class:"existing-file-item__size"},aa=".jpg,.jpeg,.png,.gif,.webp,.pdf",la=Se({__name:"FileUploader",props:{multiple:{type:Boolean,default:!1},maxFiles:{default:1},maxSizeMb:{default:10},existingFiles:{default:()=>[]},disabled:{type:Boolean,default:!1}},emits:["change","remove-existing","download"],setup(r,{expose:G,emit:O}){const F=r,q=O,D=T(),m=T([]),E=T([]),n=Ve(()=>`JPG / PNG / GIF / WebP / PDF (最大${F.maxSizeMb}MB、最大${F.maxFiles}ファイル)`),H=(Y,B)=>{const y=Y.raw;if(y){if(!["image/jpeg","image/png","image/gif","image/webp","application/pdf"].includes(y.type)){w.error("JPG、PNG、GIF、WebP、PDFのみアップロード可能です");const L=m.value.findIndex(K=>K.name===Y.name);L!==-1&&m.value.splice(L,1),E.value=m.value.map(K=>K.raw).filter(Boolean),q("change",E.value);return}const M=F.maxSizeMb*1024*1024;if(y.size>M){w.error(`ファイルサイズは${F.maxSizeMb}MB以下にしてください`);const L=m.value.findIndex(K=>K.name===Y.name);L!==-1&&m.value.splice(L,1),E.value=m.value.map(K=>
1K.raw).filter(Boolean),q("change",E.value);return}}E.value=B.map(g=>g.raw).filter(Boolean),q("change",E.value)},P=()=>{w.warning(`最大${F.maxFiles}ファイルまでアップロードできます`)},f=(Y,B)=>{E.value=B.map(y=>y.raw).filter(Boolean),q("change",E.value)},I=Y=>Y<1024?`${Y}B`:Y<1024*1024?`${(Y/1024).toFixed(1)}KB`:`${(Y/(1024*1024)).toFixed(1)}MB`;return G({getFiles:()=>E.value}),(Y,B)=>{const y=x("el-icon"),g=x("el-upload"),M=x("el-button");return o(),p("div",Qt,[l(g,{ref_key:"uploadRef",ref:D,multiple:r.multiple,limit:r.maxFiles,"on-exceed":P,"on-change":H,"on-remove":f,"file-list":m.value,"auto-upload":!1,accept:aa,drag:"","list-type":"text"},{tip:u(()=>[a("div",Xt,d(n.value),1)]),default:u(()=>[l(y,{class:"el-icon--upload"},{default:u(()=>[l(ie(ht))]),_:1}),B[0]||(B[0]=a("div",{class:"el-upload__text"},[V(" ファイルをドラッグ、または"),a("em",null,"クリックして選択")],-1))]),_:1},8,["multiple","limit","file-list"]),r.existingFiles.length>0?(o(),p("div",Zt,[B[3]||(B[3]=a("div",{class:"existing-files__title"},"添付済みファイル",-1)),(o(!0),p(j,null,ne(r.existingFiles,L=>(o(),p("div",{key:L.id,class:"existing-file-item"},[l(y,null,{default:u(()=>[l(ie(Dt))]),_:1}),a("span",ea,d(L.fileName),1),a("span",ta,d(I(L.fileSize)),1),r.disabled?b("",!0):(o(),R(M,{key:0,link:"",type:"danger",size:"small",onClick:K=>Y.$emit("remove-existing",L.id)},{default:u(()=>[...B[1]||(B[1]=[V(" 削除 ",-1)])]),_:1},8,["onClick"])),l(M,{link:"",type:"primary",size:"small",onClick:K=>Y.$emit("download",L.id)},{default:u(()=>[...B[2]||(B[2]=[V(" ダウンロード ",-1)])]),_:1},8,["onClick"])]))),128))])):b("",!0)])}}}),rt=st(la,[["__scopeId","data-v-fbcf5a42"]]),sa={class:"transport-pass-form"},oa={style:{"margin-left":"8px",color:"var(--el-text-color-secondary)","font-size":"13px"}},na=Se({__name:"TransportPassForm",props:{modelValue:{},existingFiles:{default:()=>[]},disabled:{type:Boolean,default:!1}},emits:["update:modelValue","remove-attachment","download-attachment","month-change"],setup(r,{expose:G,emit:O}){const F=r,q=O,D=new Date().toISOString().slice(0,10),m=(y,g)=>{if(!y)return"";const M=new Date(y);return M.setDate(M.getDate()+g-1),M.toISOString().slice(0,10)},E=T(30),n=tt({belongsMonth:D.slice(0,7),validFrom:D,validTo:m(D,30),amount:0,route:"",notes:""}),H=T([]),P=T(),f=y=>{var M;const g=y.belongsMonth??((M=y.purchaseDate)==null?void 0:M.slice(0,7))??n.belongsMonth;if(Object.assign(n,{...y,belongsMonth:g}),n.validFrom&&n.validTo){const L=new Date(n.validFrom),K=new Date(n.validTo);E.value=Math.round((K.getTime()-L.getTime())/864e5)+1}};at(()=>{F.modelValue&&f(F.modelValue)}),ce(()=>F.modelValue,y=>{y&&f(y)}),ce(n,y=>q("update:modelValue",{...y}),{deep:!0}),ce(()=>n.belongsMonth,y=>{y&&q("month-change",y)});const I=()=>{n.validFrom&&(n.validTo=m(n.validFrom,E.value))},$=()=>({...n}),Y=()=>{var y;return((y=P.value)==null?void 0:y.getFiles())??[]};return G({getData:$,getFiles:Y,validate:()=>{var M;if(!n.belongsMonth)return w.error("定期券所属月を入力してください"),!1;if(!n.validFrom||!n.validTo)return w.error("有効期間を入力してください"),!1;if(!n.amount||n.amount<1)return w.error("金額を入力してください"),!1;if(!n.route.trim())return w.error("線路を入力してください"),!1;const y=Y(),g=((M=F.existingFiles)==null?void 0:M.length)??0;return y.length===0&&g===0?(w.error("購入証明書を添付してください"),!1):!0}}),(y,g)=>{const M=x("el-date-picker"),L=x("el-form-item"),K=x("el-input-number"),ue=x("el-input");return o(),p("div",sa,[l(L,{label:"定期券所属月",required:""},{default:u(()=>[l(M,{modelValue:n.belongsMonth,"onUpdate:modelValue":g[0]||(g[0]=W=>n.belongsMonth=W),type:"month",format:"YYYY/MM","value-format":"YYYY-MM",style:{width:"100%"},disabled:r.disabled},null,8,["modelValue","disabled"])]),_:1}),l(L,{label:"有効開始日",required:""},{default:u(()=>[l(M,{modelValue:n.validFrom,"onUpdate:modelValue":g[1]||(g[1]=W=>n.validFrom=W),type:"date",format:"YYYY/MM/DD","value-format":"YYYY-MM-DD",style:{width:"100%"},disabled:r.disabled,onChange:I},null,8,["modelValue","disabled"])]),_:1}),l(L,{label:"有効日数",required:""},{default:u(()=>[l(K,{modelValue:E.value,"onUpdate:modelValue":g[2]||(g[2]=W=>E.value=W),min:1,max:365,style:{width:"120px"},disabled:r.disabled,onChange:I},null,8,["modelValue","disabled"]),a("span",oa," 日間 終了: "+d(n.validTo||"―"),1)]),_:1}),l(L,{label:"金額",required:""},{default:u(()=>[l(K,{modelValue:n.amount,"onUpdate:modelValue":g[3]||(g[3]=W=>n.amount=W),min:1,max:1e6,style:{width:"100%"},disabled:r.disabled},null,8,["modelValue","disabled"])]),_:1}),l(L,{label:"線路",required:""},{default:u(()=>[l(ue,{modelValue:n.route,"onUpdate:modelValue":g[4]||(g[4]=W=>
1n.route=W),placeholder:"例: 蕨-東陽町",disabled:r.disabled},null,8,["modelValue","disabled"])]),_:1}),l(L,{label:"備考"},{default:u(()=>[l(ue,{modelValue:n.notes,"onUpdate:modelValue":g[5]||(g[5]=W=>n.notes=W),placeholder:"例: 一か月分、三か月分",disabled:r.disabled},null,8,["modelValue","disabled"])]),_:1}),l(L,{label:"購入証明書(必須)"},{default:u(()=>[l(rt,{ref_key:"uploaderRef",ref:P,multiple:!0,"max-files":5,"existing-files":r.existingFiles,disabled:r.disabled,onChange:g[6]||(g[6]=W=>H.value=W),onRemoveExisting:g[7]||(g[7]=W=>y.$emit("remove-attachment",W)),onDownload:g[8]||(g[8]=W=>y.$emit("download-attachment",W))},null,8,["existing-files","disabled"])]),_:1})])}}}),ia={class:"transport-business-form"},da={class:"detail-card-row1"},ra={class:"detail-card-row2"},ua={class:"subtotal"},pa={class:"detail-card-row1"},ma={class:"detail-card-row2"},ca={class:"subtotal"},fa={class:"allowance-row"},ba={class:"allowance-total"},va={class:"subtotal"},ya={class:"total"},ga=Se({__name:"TransportBusinessForm",props:{modelValue:{},existingFiles:{default:()=>[]},disabled:{type:Boolean,default:!1}},emits:["update:modelValue","remove-attachment","download-attachment","month-change"],setup(r,{expose:G,emit:O}){const F=r,q=O,D=new Date().toISOString().slice(0,10),m=tt({belongsMonth:D.slice(0,7),tripReason:"",transportationItems:[],transportationSubtotal:0,hotelItems:[],hotelSubtotal:0,totalAmount:0,allowanceItems:[],allowanceSubtotal:0}),E=T([]),n=T(),H=N=>{var Z;const v=N.belongsMonth??((Z=N.submissionDate)==null?void 0:Z.slice(0,7))??m.belongsMonth;Object.assign(m,{...N,belongsMonth:v})};at(()=>{F.modelValue&&H(F.modelValue)}),ce(()=>F.modelValue,N=>{N&&H(N)});const P=Ve(()=>m.transportationItems.reduce((N,v)=>N+(v.amount||0),0)),f=Ve(()=>m.hotelItems.reduce((N,v)=>N+(v.amount||0),0)),I=Ve(()=>m.allowanceItems.reduce((N,v)=>N+(v.perDay||0)*(v.days||0),0)),$=Ve(()=>P.value+f.value+I.value);ce(()=>m.belongsMonth,N=>{N&&q("month-change",N)}),ce([P,f,I],()=>{m.transportationSubtotal=P.value,m.hotelSubtotal=f.value,m.allowanceSubtotal=I.value,m.totalAmount=$.value,q("update:modelValue",{...m})});const Y=()=>{m.transportationItems.push({date:"",amount:0,tripType:"往復",route:"",notes:""})},B=N=>{m.transportationItems.splice(N,1)},y=()=>{m.hotelItems.push({date:"",amount:0,hotelName:"",notes:""})},g=N=>{m.hotelItems.splice(N,1)},M=()=>{m.allowanceItems.push({tripType:"",perDay:0,days:0,notes:""})},L=N=>{m.allowanceItems.splice(N,1)},K=()=>({...m,transportationSubtotal:P.value,hotelSubtotal:f.value,totalAmount:$.value}),ue=()=>{var N;return((N=n.value)==null?void 0:N.getFiles())??[]};return G({getData:K,getFiles:ue,validate:()=>{var v;if(!m.belongsMonth)return w.error("旅費所属月を入力してください"),!1;if(!m.tripReason.trim())return w.error("出張内容・理由を入力してください"),!1;if($.value<1)return w.error("金額を入力してください"),!1;if(m.transportationItems.length>0||m.hotelItems.length>0){const Z=ue(),de=((v=F.existingFiles)==null?void 0:v.length)??0;if(Z.length===0&&de===0)return w.error("領収書を添付してください"),!1}return!0}}),(N,v)=>{const Z=x("el-date-picker"),de=x("el-form-item"),ee=x("el-input"),pe=x("el-input-number"),fe=x("el-option"),$e=x("el-select"),be=x("el-button");return o(),p("div",ia,[l(de,{label:"旅費所属月",required:""},{default:u(()=>[l(Z,{modelValue:m.belongsMonth,"onUpdate:modelValue":v[0]||(v[0]=h=>m.belongsMonth=h),type:"month",format:"YYYY/MM","value-format":"YYYY-MM",style:{width:"100%"},disabled:r.disabled},null,8,["modelValue","disabled"])]),_:1}),l(de,{label:"出張内容・理由",required:""},{default:u(()=>[l(ee,{modelValue:m.tripReason,"onUpdate:modelValue":v[1]||(v[1]=h=>m.tripReason=h),type:"textarea",autosize:{minRows:2,maxRows:6},placeholder:"出張の内容・理由を入力してください",disabled:r.disabled},null,8,["modelValue","disabled"])]),_:1}),v[10]||(v[10]=a("div",{class:"section-title"},"交通費明細",-1)),(o(!0),p(j,null,ne(m.transportationItems,(h,i)=>(o(),p("div",{key:i,class:"detail-card"},[a("div",da,[l(ee,{modelValue:h.date,"onUpdate:modelValue":s=>h.date=s,placeholder:"日付 (例:2/13~15)",disabled:r.disabled,size:"small",class:"field-date"},null,8,["modelValue","onUpdate:modelValue","disabled"]),l(pe,{modelValue:h.amount,"onUpdate:modelValue":s=>h.amount=s,min:0,max:1e6,size:"small",disabled:r.disabled,class:"field-amount"},null,8,["modelValue","onUpdate:modelValue","disabled"]),l($e,{modelValue:h.tripType,"onUpdate:modelValue":s=>h.tripType=s,size:"small",disabled:r.disabled,class:"field-trip"},{default:u(()=>[l(fe,{value:"片道",label:"片道"}),l(fe,{value:"往復",label:"往復"}),l(fe,{value:"",label:"なし"})]),_:1},8,["modelValue","onUpdate:modelValue","disabled"]),r.disabled?b("",!0):(o(),R(be,{key:0,circle:"",type:"danger",size:"small",icon:ie(et),class:"field-del",onClick:s=>B(i)},null,8,["icon","onClick"]))]),a("div",ra,[l(ee,{modelValue:h.route,"onUpdate:modelValue":s=>h.route=s,placeholder:"線路+駅名",disabled:r.disabled,size:"small",class:"field-route"},null,8,["modelValue","onUpdate:modelValue","disabled"]),l(ee,{modelValue:h.notes,"onUpdate:modelValue":s=>h.notes=s,placeholder:"備考",disabled:r.disabled,size:"small",class:"field-notes"},null,8,["modelValue","onUpdate:modelValue","disabled"])])]))),128)),r.disabled?b("",!0):(o(),R(be,{key:0,size:"small",onClick:Y},{default:u(()=>[...v[5]||(v[5]=[V("+ 交通費追加",-1)])]),_:1}
1)),a("div",ua,"交通費小計: ¥"+d(P.value.toLocaleString()),1),v[11]||(v[11]=a("div",{class:"section-title",style:{"margin-top":"16px"}},"宿泊費明細",-1)),(o(!0),p(j,null,ne(m.hotelItems,(h,i)=>(o(),p("div",{key:i,class:"detail-card"},[a("div",pa,[l(ee,{modelValue:h.date,"onUpdate:modelValue":s=>h.date=s,placeholder:"日付",disabled:r.disabled,size:"small",class:"field-date"},null,8,["modelValue","onUpdate:modelValue","disabled"]),l(pe,{modelValue:h.amount,"onUpdate:modelValue":s=>h.amount=s,min:0,max:1e6,size:"small",disabled:r.disabled,class:"field-amount"},null,8,["modelValue","onUpdate:modelValue","disabled"]),r.disabled?b("",!0):(o(),R(be,{key:0,circle:"",type:"danger",size:"small",icon:ie(et),class:"field-del",onClick:s=>g(i)},null,8,["icon","onClick"]))]),a("div",ma,[l(ee,{modelValue:h.hotelName,"onUpdate:modelValue":s=>h.hotelName=s,placeholder:"ホテル名",disabled:r.disabled,size:"small",class:"field-route"},null,8,["modelValue","onUpdate:modelValue","disabled"]),l(ee,{modelValue:h.notes,"onUpdate:modelValue":s=>h.notes=s,placeholder:"備考",disabled:r.disabled,size:"small",class:"field-notes"},null,8,["modelValue","onUpdate:modelValue","disabled"])])]))),128)),r.disabled?b("",!0):(o(),R(be,{key:1,size:"small",onClick:y},{default:u(()=>[...v[6]||(v[6]=[V("+ 宿泊費追加",-1)])]),_:1})),a("div",ca,"宿泊費小計: ¥"+d(f.value.toLocaleString()),1),v[12]||(v[12]=a("div",{class:"section-title",style:{"margin-top":"16px"}},"出張手当",-1)),(o(!0),p(j,null,ne(m.allowanceItems,(h,i)=>(o(),p("div",{key:i,class:"detail-card"},[a("div",fa,[l($e,{modelValue:h.tripType,"onUpdate:modelValue":s=>h.tripType=s,size:"small",style:{width:"90px"},disabled:r.disabled},{default:u(()=>[l(fe,{value:"",label:"区分"}),l(fe,{value:"domestic",label:"国内"}),l(fe,{value:"overseas",label:"海外"})]),_:1},8,["modelValue","onUpdate:modelValue","disabled"]),l(pe,{modelValue:h.perDay,"onUpdate:modelValue":s=>h.perDay=s,min:0,max:1e6,size:"small",disabled:r.disabled,placeholder:"手当/日",style:{width:"120px"}},null,8,["modelValue","onUpdate:modelValue","disabled"]),v[7]||(v[7]=a("span",{class:"allowance-sep"},"円 ×",-1)),l(pe,{modelValue:h.days,"onUpdate:modelValue":s=>h.days=s,min:0,max:365,size:"small",disabled:r.disabled,placeholder:"日数",style:{width:"90px"}},null,8,["modelValue","onUpdate:modelValue","disabled"]),v[8]||(v[8]=a("span",{class:"allowance-sep"},"日 =",-1)),a("span",ba,"¥"+d(((h.perDay||0)*(h.days||0)).toLocaleString()),1),r.disabled?b("",!0):(o(),R(be,{key:0,circle:"",type:"danger",size:"small",icon:ie(et),onClick:s=>L(i)},null,8,["icon","onClick"]))]),l(ee,{modelValue:h.notes,"onUpdate:modelValue":s=>h.notes=s,placeholder:"備考(任意)",size:"small",disabled:r.disabled},null,8,["modelValue","onUpdate:modelValue","disabled"])]))),128)),r.disabled?b("",!0):(o(),R(be,{key:2,size:"small",onClick:M},{default:u(()=>[...v[9]||(v[9]=[V("+ 出張手当追加",-1)])]),_:1})),a("div",va,"出張手当小計: ¥"+d(I.value.toLocaleString()),1),a("div",ya,"合計: ¥"+d($.value.toLocaleString()),1),l(de,{label:"領収書(交通費・宿泊費がある場合は必須。原本を管理部に提出必要)",style:{"margin-top":"16px"}},{default:u(()=>[l(rt,{ref_key:"uploaderRef",ref:n,multiple:!0,"max-files":20,"existing-files":r.existingFiles,disabled:r.disabled,onChange:v[2]||(v[2]=h=>E.value=h),onRemoveExisting:v[3]||(v[3]=h=>N.$emit("remove-attachment",h)),onDownload:v[4]||(v[4]=h=>N.$emit("download-attachment",h))},null,8,["existing-files","disabled"])]),_:1})])}}}),ha=st(ga,[["__scopeId","data-v-b8c32a20"]]),Da={class:"misc-expense-form"},_a=Se({__name:"MiscExpenseForm",props:{modelValue:{},existingFiles:{default:()=>[]},disabled:{type:Boolean,default:!1}},emits:["update:modelValue","remove-attachment","download-attachment","month-change"],setup(r,{expose:G,emit:O}){const F=r,q=O,D=new Date().toISOString().slice(0,10),m=tt({expenseDate:D,expenseName:"",amount:0}),E=T([]),n=T();at(()=>{F.modelValue&&Object.assign(m,F.modelValue)}),ce(()=>F.modelValue,I=>{I&&Object.assign(m,I)}),ce(m,I=>q("update:modelValue",{...I}),{deep:!0}),ce(()=>m.expenseDate,I=>{I&&q("month-change",I.slice(0,7))});const H=()=>({...m}),P=()=>{var I;return((I=n.value)==null?void 0:I.getFiles())??[]};
1return G({getData:H,getFiles:P,validate:()=>{var Y;if(!m.expenseDate)return w.error("日付を入力してください"),!1;if(!m.expenseName.trim())return w.error("雑費内容を入力してください"),!1;if(!m.amount||m.amount<1)return w.error("金額を入力してください"),!1;const I=P(),$=((Y=F.existingFiles)==null?void 0:Y.length)??0;return I.length===0&&$===0?(w.error("領収書を添付してください"),!1):!0}}),(I,$)=>{const Y=x("el-date-picker"),B=x("el-form-item"),y=x("el-input"),g=x("el-input-number");return o(),p("div",Da,[l(B,{label:"日付",required:""},{default:u(()=>[l(Y,{modelValue:m.expenseDate,"onUpdate:modelValue":$[0]||($[0]=M=>m.expenseDate=M),type:"date",format:"YYYY/MM/DD","value-format":"YYYY-MM-DD",style:{width:"100%"},disabled:r.disabled},null,8,["modelValue","disabled"])]),_:1}),l(B,{label:"雑費内容",required:""},{default:u(()=>[l(y,{modelValue:m.expenseName,"onUpdate:modelValue":$[1]||($[1]=M=>m.expenseName=M),placeholder:"例: 会議用備品",disabled:r.disabled},null,8,["modelValue","disabled"])]),_:1}),l(B,{label:"金額",required:""},{default:u(()=>[l(g,{modelValue:m.amount,"onUpdate:modelValue":$[2]||($[2]=M=>m.amount=M),min:1,max:1e6,style:{width:"100%"},disabled:r.disabled},null,8,["modelValue","disabled"])]),_:1}),l(B,{label:"領収書(必須。原本を管理部に提出必要)"},{default:u(()=>[l(rt,{ref_key:"uploaderRef",ref:n,multiple:!0,"max-files":5,"existing-files":r.existingFiles,disabled:r.disabled,onChange:$[3]||($[3]=M=>E.value=M),onRemoveExisting:$[4]||($[4]=M=>I.$emit("remove-attachment",M)),onDownload:$[5]||($[5]=M=>I.$emit("download-attachment",M))},null,8,["existing-files","disabled"])]),_:1})])}}}),ka={class:"expense-application"},Va={class:"content-wrapper"},wa={class:"form-card"},xa={class:"history-card"},Ta={class:"history-header"},$a={class:"month-nav"},Ma={class:"month-label"},Ca={key:0,class:"history-table-wrapper"},Sa={class:"expand-detail"},Fa={key:0,class:"detail-section"},Ua={class:"detail-section-title"},za={class:"group-detail-header"},Ia={class:"group-date-val"},Ya={class:"group-date-amount"},Na={class:"group-detail-body"},Ra={class:"group-detail-item"},Ba={class:"group-detail-item"},Ea={key:0,class:"group-detail-notes"},La={class:"detail-row"},Pa={class:"detail-row"},ja={key:0,class:"detail-row"},Aa={class:"detail-row"},Ga={class:"detail-row"},Oa={class:"detail-row"},qa={key:0,class:"detail-row"},Wa={class:"detail-row"},Ha={class:"detail-row"},Ja={style:{"white-space":"pre-line"}},Ka={key:0,class:"detail-section"},Qa={class:"detail-item-idx"},Xa={key:0,class:"detail-notes"},Za={key:1,class:"detail-section"},el={class:"detail-item-idx"},tl={key:0,class:"detail-notes"},al={key:2,class:"detail-row"},ll={class:"detail-row"},sl={key:0,class:"detail-row"},ol={key:5,class:"detail-row detail-row--approved"},nl={key:6,class:"detail-row detail-row--danger"},il={key:7,class:"detail-row"},dl={key:1,class:"text-muted"},rl={key:4,class:"text-muted"},ul={key:1,class:"mobile-history-cards"},pl={key:0,class:"empty-state"},ml={class:"mobile-header"},cl={class:"mobile-type"},fl={key:0,class:"mobile-group-badge"},bl={class:"mobile-body"},vl={class:"mobile-row"},yl={class:"mobile-value"},gl={class:"mobile-row"},hl={class:"mobile-value"},Dl={key:0,class:"mobile-row mobile-row--col"},_l={class:"group-mobile-header"},kl={class:"group-mobile-body"},Vl={key:0,class:"group-mobile-notes"},wl={key:1,class:"group-mobile-notes group-mobile-notes--approved"},xl={key:2,class:"group-mobile-notes group-mobile-notes--danger"},Tl={class:"group-mobile-actions"},$l={class:"mobile-row"},Ml={class:"mobile-value"},Cl={class:"mobile-row"},Sl={class:"mobile-value"},Fl={class:"mobile-row"},Ul={class:"mobile-value"},zl={class:"mobile-row"},Il={class:"mobile-value"},Yl={class:"mobile-row"},Nl={class:"mobile-value"},Rl={class:"mobile-row"},Bl={class:"mobile-value"},El={class:"mobile-row"},Ll={class:"mobile-value"},Pl={class:"mobile-row mobile-row--col"},jl={class:"mobile-value",style:{"white-space":"pre-line"}},Al={key:0,class:"mobile-row mobile-row--col"},Gl={key:1,class:"mobile-row mobile-row--col"},Ol={class:"mobile-row"},ql={class:"mobile-value"},Wl={class:"mobile-row"},Hl={class:"mobile-value"},Jl={key:5,class:"mobile-row"},Kl={class:"mobile-value"},Ql={key:6,class:"mobile-row mobile-row--approved"},Xl={class:"mobile-value"},Zl={key:7,class:"mobile-row mobile-row--danger"},es={class:"mobile-value"},ts={key:8,class:"mobile-row"},as={class:"mobile-value"},ls={key:0,class:"mobile-footer"},ss=Se({__name:"ExpenseApplication",setup(r){const G=$t(),O=T(""),F=()=>{const c=G.query.tenant||localStorage.getItem("pwa_tenant_id")||"",e=localStorage.getItem(`punch_session_${c}`);if(e)try{O.value=JSON.parse(e).fullName??""}catch{}},q=T("transportation-daily"),D=T(!1),m=T({"transportation-daily":!1,"transportation-pass":!1,"transportation-business":!1,"misc-expense":!1}),E=async(c,e)=>{try{m.value[c]=await It(e)}catch{m.value[c]=!1}},n=new Date().toISOString().slice(0,7),H=async()=>{const c=["transportation-daily","transportation-pass","transportation-business","misc-expense"];await Promise.all(c.map(e=>E(e,n)))},P=T(!1),f=T(null),I=T([]),$=T(window.innerWidth<=768),Y=Ve(()=>{const c=new Map,e=new Map;for(const Q of I.value){if(Q.applicationType!=="transportation-daily")continue;const ae=Q.applicationData??{},se=`${new Date(Q.createdAt).toISOString().slice(0,10)}||${ae.route}||${ae.tripType}||${ae.amount}`;c.set(Q.id,se),e.has(se)||e.set(se,[]),e.get(se).push(Q)}const z=[],C=new Set;for(const Q of I.value){if(Q.applicationType!=="transportation-daily"){z.push(Q);continue}const ae=c.get(Q.id);if(C.has(ae))continue;C.add(ae);const le=e.get(ae);if(le.length===1){z.push(Q);continue}const se=le.map(xe=>{var De;return((De=xe.applicationData)==null?void 0:De.expenseDate)??""}
1).filter(Boolean).sort(),oe=le.reduce((xe,De)=>{const t=De.applicationData??{};return xe+Number(t.totalAmount??t.amount??0)},0),J={pending:3,returned:2,rejected:1,approved:0},ye=le.reduce((xe,De)=>(J[De.status]??0)>(J[xe.status]??0)?De:xe).status;z.push({...le[0],id:`group__${ae}`,status:ye,isGroup:!0,groupItems:le,groupCount:le.length,groupTotalAmount:oe,groupDates:se})}return z}),B=new Date,y=T(B.getFullYear()),g=T(B.getMonth()+1),M=()=>{g.value===1?(y.value-=1,g.value=12):g.value-=1,i()},L=()=>{g.value===12?(y.value+=1,g.value=1):g.value+=1,i()},K=Ve(()=>I.value.filter(c=>c.status==="approved").length),ue=T(!1),W=async()=>{var c,e;if(!ue.value){ue.value=!0;try{await Yt(y.value,g.value),w.success("ダウンロードを開始しました")}catch(z){const C=((e=(c=z==null?void 0:z.response)==null?void 0:c.data)==null?void 0:e.message)??(z==null?void 0:z.message)??"PDFダウンロードに失敗しました";w.error(C)}finally{ue.value=!1}}},N=T([]),v=T(!1),Z=T(),de=T(),ee=T(),pe=T(),fe=T({}),$e=T({}),be=T({}),h=T({}),i=async()=>{P.value=!0;try{const c=await Ct({year:y.value,month:g.value,limit:50});I.value=c.items}catch{}finally{P.value=!1}},s=c=>({"transportation-daily":"毎日通勤費","transportation-pass":"定期券","transportation-business":"出張旅費","misc-expense":"雑費"})[c]??c,S=c=>({pending:"申請中",approved:"承認済",rejected:"却下",returned:"差戻し",cancelled:"キャンセル"})[c]??c,A=c=>({pending:"warning",approved:"success",rejected:"danger",returned:"info",cancelled:"info"})[c]??"",Me=c=>{const e=c.applicationData??{};return Number(e.totalAmount??e.amount??0)},re=c=>{const e=c.applicationData??{};return e.expenseDate??e.belongsMonth??e.purchaseDate??c.startDate??""},_e=c=>new Date(c).toLocaleDateString("ja-JP",{year:"numeric",month:"2-digit",day:"2-digit"}),ge=c=>c.status==="pending"||c.status==="returned",ke=async c=>{try{await nt.confirm("この申請を削除しますか?","削除確認",{confirmButtonText:"削除",cancelButtonText:"キャンセル",type:"warning"})}catch{return}f.value=c.id;try{await St(c.id),w.success("削除しました"),await i()}catch{w.error("削除に失敗しました")}finally{f.value=null}},he=c=>c.status==="approved",Ce=c=>{var e;return!!(c.isGroup&&((e=c.groupItems)!=null&&e.some(z=>z.status==="approved")))},ve=T(null),U=T(null),X=async c=>{try{await nt.confirm("この申請をキャンセルしますか?承認済みの申請です。","キャンセル確認",{confirmButtonText:"キャンセルする",cancelButtonText:"戻る",type:"warning"})}catch{return}ve.value=c.id;try{await vt(c.id),w.success("申請をキャンセルしました"),await i()}catch(e){const z=e instanceof Error?e.message:"キャンセルに失敗しました";w.error(z)}finally{ve.value=null}},te=async c=>{const e=(c.groupItems??[]).filter(z=>z.status==="approved");if(e.length!==0){try{await nt.confirm(`この通勤費グループ(${e.length}件)をすべてキャンセルしますか?`,"キャンセル確認",{confirmButtonText:"キャンセルする",cancelButtonText:"戻る",type:"warning"})}catch{return}U.value=c.id;try{await Promise.all(e.map(z=>vt(z.id))),w.success(`${e.length}件の申請をキャンセルしました`),await i()}catch(z){const C=z instanceof Error?z.message:"キャンセルに失敗しました";w.error(C)}finally{U.value=null}}},ut=async c=>{try{const e=await Ft(c.id);["image/jpeg","image/png","image/gif","image/webp"].includes(c.mimeType)?(N.value=[e],v.value=!0):window.open(e,"_blank")}catch{w.error("ファイルのURLの取得に失敗しました")}},lt=async c=>{var Q,ae,le;let e={},z=[],C=!1;if(c==="transportation-daily"&&Z.value){if(C=Z.value.validate(),C){const se=Z.value.getData();D.value=!0;try{if("perDateMode"in se&&se.perDateMode){const oe=se.entries;for(const J of oe)J.date&&await it(c,{expenseDate:J.date,amount:J.amount,tripType:J.tripType,route:J.route,notes:J.notes});(Q=Z.value)==null||Q.saveToLocalStorage(),w.success(`${oe.filter(J=>J.date).length}件申請しました`)}else{const oe=se,J=((ae=oe.dates)==null?void 0:ae.filter(Boolean))??[oe.expenseDate];for(const ye of J)await it(c,{...oe,expenseDate:ye});(le=Z.value)==null||le.saveToLocalStorage(),w.success(`${J.length}件申請しました`)}pt(c),await i()}catch(oe){const J=oe instanceof Error?oe.message:"申請に失敗しました";w.error(J)}finally{D.value=!1}return}}else c==="transportation-pass"&&de.value?(C=de.value.validate(),C&&(e=de.value.getData(),z=de.value.getFiles())):c==="transportation-business"&&ee.value?(C=ee.value.validate(),C&&(e=ee.value.getData(),z=ee.value.getFiles())):c==="misc-expense"&&pe.value&&(C=pe.value.validate(),C&&(e=pe.value.getData(),z=pe.value.getFiles()));if(C){D.value=!0;try{await it(c,e,z.length>0?z:void 0),w.success("申請しました"),pt(c),await i()}catch(se){const oe=se instanceof Error?se.message:"申請に失敗しました";w.error(oe)}finally{D.value=!1}}},pt=c=>{c==="transportation-daily"?fe.value={}:c==="transportation-pass"?$e.value={}:c==="transportation-business"?be.value={}:c==="misc-expense"&&(h.value={})},mt=()=>{$.value=window.innerWidth<=768};return at(()=>{F(),i(),H(),window.addEventListener("resize",mt)}),_t(()=>{window.removeEventListener("resize",mt)}),(c,e)=>{const z=x("el-alert"),C=x("el-button"),Q=x("el-form-item"),ae=x("el-form"),le=x("el-tab-pane"),se=x("el-tabs"),oe=x("el-empty"),J=x("el-tag"),ye=x("el-table-column"),xe=x("el-table"),De=xt("loading");return o(),p("div",ka,[l(Mt,{title:"交通費・雑費申請",subtitle:O.value},null,8,["subtitle"]),a("div",Va,[a("div",wa,[l(se,{modelValue:q.value,"onUpdate:modelValue":e[12]||(e[12]=t=>q.value=t),type:"border-card"},{default:u(()=>[l(le,{label:"通勤費",name:"transportation-daily"},{default:u(()=>
1[m.value["transportation-daily"]?(o(),R(z,{key:0,type:"error",closable:!1,"show-icon":"",style:{"margin-bottom":"12px"},title:"この月は締め済みのため申請できません"})):b("",!0),l(ae,{"label-width":$.value?"auto":"120px","label-position":$.value?"top":"right"},{default:u(()=>[l(Kt,{ref_key:"dailyFormRef",ref:Z,modelValue:fe.value,"onUpdate:modelValue":e[0]||(e[0]=t=>fe.value=t),disabled:D.value,onMonthChange:e[1]||(e[1]=t=>E("transportation-daily",t))},null,8,["modelValue","disabled"]),e[15]||(e[15]=a("p",{style:{color:"#e00","font-weight":"bold",margin:"0 0 8px"}},"事実に基づいた誠実な申告をお願いします",-1)),l(Q,null,{default:u(()=>[l(C,{type:"primary",loading:D.value,disabled:m.value["transportation-daily"],onClick:e[2]||(e[2]=t=>lt("transportation-daily"))},{default:u(()=>[...e[14]||(e[14]=[V(" 申請する ",-1)])]),_:1},8,["loading","disabled"])]),_:1})]),_:1},8,["label-width","label-position"])]),_:1}),l(le,{label:"定期",name:"transportation-pass"},{default:u(()=>[m.value["transportation-pass"]?(o(),R(z,{key:0,type:"error",closable:!1,"show-icon":"",style:{"margin-bottom":"12px"},title:"この月は締め済みのため申請できません"})):b("",!0),l(ae,{"label-width":$.value?"auto":"120px","label-position":$.value?"top":"right"},{default:u(()=>[l(na,{ref_key:"passFormRef",ref:de,modelValue:$e.value,"onUpdate:modelValue":e[3]||(e[3]=t=>$e.value=t),disabled:D.value,onMonthChange:e[4]||(e[4]=t=>E("transportation-pass",t))},null,8,["modelValue","disabled"]),l(Q,null,{default:u(()=>[l(C,{type:"primary",loading:D.value,disabled:m.value["transportation-pass"],onClick:e[5]||(e[5]=t=>lt("transportation-pass"))},{default:u(()=>[...e[16]||(e[16]=[V(" 申請する ",-1)])]),_:1},8,["loading","disabled"])]),_:1})]),_:1},8,["label-width","label-position"])]),_:1}),l(le,{label:"旅費",name:"transportation-business"},{default:u(()=>[m.value["transportation-business"]?(o(),R(z,{key:0,type:"error",closable:!1,"show-icon":"",style:{"margin-bottom":"12px"},title:"この月は締め済みのため申請できません"})):b("",!0),l(ae,{"label-width":$.value?"auto":"120px","label-position":$.value?"top":"right"},{default:u(()=>[l(ha,{ref_key:"businessFormRef",ref:ee,modelValue:be.value,"onUpdate:modelValue":e[6]||(e[6]=t=>be.value=t),disabled:D.value,onMonthChange:e[7]||(e[7]=t=>E("transportation-business",t))},null,8,["modelValue","disabled"]),l(Q,null,{default:u(()=>[l(C,{type:"primary",loading:D.value,disabled:m.value["transportation-business"],onClick:e[8]||(e[8]=t=>lt("transportation-business"))},{default:u(()=>[...e[17]||(e[17]=[V(" 申請する ",-1)])]),_:1},8,["loading","disabled"])]),_:1})]),_:1},8,["label-width","label-position"])]),_:1}),l(le,{label:"雑費",name:"misc-expense"},{default:u(()=>[m.value["misc-expense"]?(o(),R(z,{key:0,type:"error",closable:!1,"show-icon":"",style:{"margin-bottom":"12px"},title:"この月は締め済みのため申請できません"})):b("",!0),l(ae,{"label-width":$.value?"auto":"120px","label-position":$.value?"top":"right"},{default:u(()=>[l(_a,{ref_key:"miscFormRef",ref:pe,modelValue:h.value,"onUpdate:modelValue":e[9]||(e[9]=t=>h.value=t),disabled:D.value,onMonthChange:e[10]||(e[10]=t=>E("misc-expense",t))},null,8,["modelValue","disabled"]),l(Q,null,{default:u(()=>[l(C,{type:"primary",loading:D.value,disabled:m.value["misc-expense"],onClick:e[11]||(e[11]=t=>lt("misc-expense"))},{default:u(()=>[...e[18]||(e[18]=[V(" 申請する ",-1)])]),_:1},8,["loading","disabled"])]),_:1})]),_:1},8,["label-width","label-position"])]),_:1})]),_:1},8,["modelValue"])]),a("div",xa,[a("div",Ta,[e[19]||(e[19]=a("h3",{class:"card-title"},"申請履歴",-1)),a("div",$a,[l(C,{icon:ie(kt),circle:"",size:"small",onClick:M},null,8,["icon"]),a("span",Ma,d(y.value)+"年"+d(g.value)+"月",1),l(C,{icon:ie(Vt),circle:"",size:"small",onClick:L},null,8,["icon"]),l(C,{type:"primary",size:"small",icon:ie(wt),loading:ue.value,disabled:K.value===0,"aria-label":"承認済みPDFダウンロード",class:"pdf-download-btn",onClick:W},{default:u(()=>[V(d($.value?"承認済みPDF":"承認済みPDFダウンロード"),1)]),_:1},8,["icon","loading","disabled"])])]),$.value?bt((o(),p("div",ul,[!P.value&&Y.value.length===0?(o(),p("div",pl," 申請履歴がありません ")):(o(!0),p(j,{key:1},ne(Y.value,t=>{var Te,Fe,Ue,ze,Ie,Ye,Ne,Re,Be,Ee,Le,Pe,je,Ae,Ge,Oe,qe,We,He;return o(),p("div",{key:t.id,class:"mobile-history-item"},[a("div",ml,[a("div",cl,[V(d(s(t.applicationType)),1),t.isGroup?(o(),p("span",fl,d(t.groupCount)+"件",1)):b("",!0)]),l(J,{type:A(t.status),size:"small"},{default:u(()=>[V(d(S(t.status)),1)]),_:2},1032,["type"])]),a("div",bl,[a("div",vl,[e[42]||(e[42]=a("span",{class:"mobile-label"},"申請日:",-1)),a("span",yl,d(_e(t.createdAt)),1)]),a("div",gl,[e[43]||(e[43]=a("span",{class:"mobile-label"},"金額:",-1)),a("span",hl,"¥"+d((t.isGroup?t.groupTotalAmount:Me(t)).toLocaleStr
1ing()),1)]),t.applicationType==="transportation-daily"&&t.isGroup?(o(),p("div",Dl,[e[46]||(e[46]=a("span",{class:"mobile-label"},"明細一覧:",-1)),(o(!0),p(j,null,ne(t.groupItems,_=>{var k,me,Je,Ke,Qe,Xe,Ze;return o(),p("div",{key:_.id,class:"mobile-sub-item group-mobile-detail"},[a("div",_l,[a("span",null,d((k=_.applicationData)==null?void 0:k.expenseDate),1),a("span",null,"¥"+d(Number(((me=_.applicationData)==null?void 0:me.amount)??((Je=_.applicationData)==null?void 0:Je.totalAmount)??0).toLocaleString()),1),l(J,{type:A(_.status),size:"small"},{default:u(()=>[V(d(S(_.status)),1)]),_:2},1032,["type"])]),a("div",kl,[a("span",null,d(((Ke=_.applicationData)==null?void 0:Ke.tripType)??"-"),1),a("span",null,d(((Qe=_.applicationData)==null?void 0:Qe.route)??"-"),1)]),(Xe=_.applicationData)!=null&&Xe.notes?(o(),p("div",Vl,d(_.applicationData.notes),1)):b("",!0),_.status==="approved"&&((Ze=_.applicationData)!=null&&Ze.approvalNotes)?(o(),p("div",wl," 承認コメント: "+d(_.applicationData.approvalNotes),1)):b("",!0),_.status==="rejected"&&_.rejectionReason?(o(),p("div",xl," 却下理由: "+d(_.rejectionReason),1)):b("",!0),a("div",Tl,[ge(_)?(o(),R(C,{key:0,size:"small",type:"danger",loading:f.value===_.id,onClick:ot=>ke(_)},{default:u(()=>[...e[44]||(e[44]=[V("削除",-1)])]),_:1},8,["loading","onClick"])):he(_)?(o(),R(C,{key:1,size:"small",type:"warning",loading:ve.value===_.id,onClick:ot=>X(_)},{default:u(()=>[...e[45]||(e[45]=[V("キャンセル",-1)])]),_:1},8,["loading","onClick"])):b("",!0)])])}),128))])):t.applicationType==="transportation-daily"?(o(),p(j,{key:1},[a("div",$l,[e[47]||(e[47]=a("span",{class:"mobile-label"},"日付:",-1)),a("span",Ml,d(re(t)),1)]),a("div",Cl,[e[48]||(e[48]=a("span",{class:"mobile-label"},"片道/往復:",-1)),a("span",Sl,d(((Te=t.applicationData)==null?void 0:Te.tripType)??"-"),1)]),a("div",Fl,[e[49]||(e[49]=a("span",{class:"mobile-label"},"線路:",-1)),a("span",Ul,d(((Fe=t.applicationData)==null?void 0:Fe.route)??"-"),1)])],64)):t.applicationType==="transportation-pass"?(o(),p(j,{key:2},[a("div",zl,[e[50]||(e[50]=a("span",{class:"mobile-label"},"所属月:",-1)),a("span",Il,d((Ue=t.applicationData)!=null&&Ue.belongsMonth?t.applicationData.belongsMonth.replace("-","年")+"月":((ze=t.applicationData)==null?void 0:ze.purchaseDate)??"-"),1)]),a("div",Yl,[e[51]||(e[51]=a("span",{class:"mobile-label"},"有効期間:",-1)),a("span",Nl,d(((Ie=t.applicationData)==null?void 0:Ie.validFrom)??"-")+" ~ "+d(((Ye=t.applicationData)==null?void 0:Ye.validTo)??"-"),1)]),a("div",Rl,[e[52]||(e[52]=a("span",{class:"mobile-label"},"線路:",-1)),a("span",Bl,d(((Ne=t.applicationData)==null?void 0:Ne.route)??"-"),1)])],64)):t.applicationType==="transportation-business"?(o(),p(j,{key:3},[a("div",El,[e[53]||(e[53]=a("span",{class:"mobile-label"},"所属月:",-1)),a("span",Ll,d((Re=t.applicationData)!=null&&Re.belongsMonth?t.applicationData.belongsMonth.replace("-","年")+"月":((Be=t.applicationData)==null?void 0:Be.submissionDate)??"-"),1)]),a("div",Pl,[e[54]||(e[54]=a("span",{class:"mobile-label"},"出張内容・理由:",-1)),a("span",jl,d(((Ee=t.applicationData)==null?void 0:Ee.tripReason)||"(未入力)"),1)]),(Pe=(Le=t.applicationData)==null?void 0:Le.transportationItems)!=null&&Pe.length?(o(),p("div",Al,[e[55]||(e[55]=a("span",{class:"mobile-label"},"交通費:",-1)),(o(!0),p(j,null,ne((je=t.applicationData)==null?void 0:je.transportationItems,(_,k)=>(o(),p("div",{key:k,class:"mobile-sub-item"},d(_.date)+" "+d(_.tripType)+" "+d(_.route)+" ¥"+d(Number(_.amount).toLocaleString()),1))),128))])):b("",!0),(Ge=(Ae=t.applicationData)==null?void 0:Ae.hotelItems)!=null&&Ge.length?(o(),p("div",Gl,[e[56]||(e[56]=a("span",{class:"mobile-label"},"ホテル:",-1)),(o(!0),p(j,null,ne((Oe=t.applicationData)==null?void 0:Oe.hotelItems,(_,k)=>(o(),p("div",{key:k,class:"mobile-sub-item"},d(_.date)+" "+d(_.hotelName)+" ¥"+d(Number(_.amount).toLocaleString()),1))),128))])):b("",!0)],64)):t.applicationType==="misc-expense"?(o(),p(j,{key:4},[a("div",Ol,[e[57]||(e[57]=a("span",{class:"mobile-label"},"日付:",-1)),a("span",ql,d(re(t)),1)]),a("div",Wl,[e[58]||(e[58]=a("span",{class:"mobile-label"},"費用名:",-1)),a("span",Hl,d(((qe=t.applicationData)==null?void 0:qe.expenseName)??"-"),1)])],64)):b("",!0),(We=t.applicationData)!=null&&We.notes?(o(),p("div",Jl,[e[59]||(e[59]=a("span",{class:"mobile-label"},"備考:",-1)),a("span",Kl,d(t.applicationData.notes),1)])):b("",!0),t.status==="approved"&&((He=t.applicationData)!=null&&He.approvalNotes)?(o(),p("div",Ql,[e[60]||(e[60]=a("span",{class:"mobile-label"},"承認コメント:",-1)),a("span",Xl,d(t.applicationData.approvalNotes),1)])):b("",!0),t.status==="rejected"&&t.rejectionReason?(o(),p("div",Zl,[e[61]||(e[61]=a("span",{class:"mobile-label"},"却下理由:",-1)),a("span",es,d(t.rejectionReason),1)])):b("",!0),t.attachments&&t.attachments.length>0?(o(),p("div",ts,[e[62]||(e[62]=a("span",{class:"mobile-label"},"添付:",-1)),a("span",as,[(o(!0),p(j,null,ne(t.attachments,_=>(o(),R(C,{key:_.id,link:"",type:"primary",size:"small",onClick:k=>ut(_)},{default:u(()=>[V(d(_.fileName),1)]),_:2},1032,["onClick"]))),128))])])):b("",!0)]),(t.isGroup?Ce(t):ge(t)||he(t))?(o(),p("div",ls,[t.isGroup&&Ce(t)?(o(),R(C,{key:0,t
1ype:"warning",size:"small",loading:U.value===t.id,onClick:_=>te(t)},{default:u(()=>[...e[63]||(e[63]=[V("キャンセル",-1)])]),_:1},8,["loading","onClick"])):ge(t)?(o(),R(C,{key:1,type:"danger",size:"small",loading:f.value===t.id,onClick:_=>ke(t)},{default:u(()=>[...e[64]||(e[64]=[V("削除",-1)])]),_:1},8,["loading","onClick"])):he(t)?(o(),R(C,{key:2,type:"warning",size:"small",loading:ve.value===t.id,onClick:_=>X(t)},{default:u(()=>[...e[65]||(e[65]=[V("キャンセル",-1)])]),_:1},8,["loading","onClick"])):b("",!0)])):b("",!0)])}),128))])),[[De,P.value]]):(o(),p("div",Ca,[!P.value&&Y.value.length===0?(o(),R(oe,{key:0,description:"申請履歴がありません"})):bt((o(),R(xe,{key:1,data:Y.value,"row-key":t=>t.id,border:"",stripe:"",size:"small"},{default:u(()=>[l(ye,{type:"expand"},{default:u(({row:t})=>{var Te,Fe,Ue,ze,Ie,Ye,Ne,Re,Be,Ee,Le,Pe,je,Ae,Ge,Oe,qe,We,He,_;return[a("div",Sa,[t.applicationType==="transportation-daily"&&t.isGroup?(o(),p("div",Fa,[a("div",Ua,"明細一覧("+d(t.groupCount)+"件)",1),(o(!0),p(j,null,ne(t.groupItems,k=>{var me,Je,Ke,Qe,Xe,Ze;return o(),p("div",{key:k.id,class:"group-detail-card"},[a("div",za,[a("span",Ia,d(((me=k.applicationData)==null?void 0:me.expenseDate)??"-"),1),a("span",Ya,"¥"+d(Number(((Je=k.applicationData)==null?void 0:Je.amount)??((Ke=k.applicationData)==null?void 0:Ke.totalAmount)??0).toLocaleString()),1),l(J,{type:A(k.status),size:"small",class:"group-date-status"},{default:u(()=>[V(d(S(k.status)),1)]),_:2},1032,["type"]),ge(k)?(o(),R(C,{key:0,size:"small",type:"danger",loading:f.value===k.id,onClick:ot=>ke(k)},{default:u(()=>[...e[20]||(e[20]=[V("削除",-1)])]),_:1},8,["loading","onClick"])):he(k)?(o(),R(C,{key:1,size:"small",type:"warning",loading:ve.value===k.id,onClick:ot=>X(k)},{default:u(()=>[...e[21]||(e[21]=[V("キャンセル",-1)])]),_:1},8,["loading","onClick"])):b("",!0)]),a("div",Na,[a("span",Ra,d(((Qe=k.applicationData)==null?void 0:Qe.tripType)??"-"),1),a("span",Ba,d(((Xe=k.applicationData)==null?void 0:Xe.route)??"-"),1),(Ze=k.applicationData)!=null&&Ze.notes?(o(),p("span",Ea,d(k.applicationData.notes),1)):b("",!0)])])}),128))])):t.applicationType==="transportation-daily"?(o(),p(j,{key:1},[a("div",La,[e[22]||(e[22]=a("span",{class:"detail-label"},"片道/往復:",-1)),a("span",null,d(((Te=t.applicationData)==null?void 0:Te.tripType)??"-"),1)]),a("div",Pa,[e[23]||(e[23]=a("span",{class:"detail-label"},"線路:",-1)),a("span",null,d(((Fe=t.applicationData)==null?void 0:Fe.route)??"-"),1)]),(Ue=t.applicationData)!=null&&Ue.notes?(o(),p("div",ja,[e[24]||(e[24]=a("span",{class:"detail-label"},"備考:",-1)),a("span",null,d(t.applicationData.notes),1)])):b("",!0)],64)):t.applicationType==="transportation-pass"?(o(),p(j,{key:2},[a("div",Aa,[e[25]||(e[25]=a("span",{class:"detail-label"},"所属月:",-1)),a("span",null,d((ze=t.applicationData)!=null&&ze.belongsMonth?t.applicationData.belongsMonth.replace("-","年")+"月":((Ie=t.applicationData)==null?void 0:Ie.purchaseDate)??"-"),1)]),a("div",Ga,[e[26]||(e[26]=a("span",{class:"detail-label"},"有効期間:",-1)),a("span",null,d(((Ye=t.applicationData)==null?void 0:Ye.validFrom)??"-")+" ~ "+d(((Ne=t.applicationData)==null?void 0:Ne.validTo)??"-"),1)]),a("div",Oa,[e[27]||(e[27]=a("span",{class:"detail-label"},"線路:",-1)),a("span",null,d(((Re=t.applicationData)==null?void 0:Re.route)??"-"),1)]),(Be=t.applicationData)!=null&&Be.notes?(o(),p("div",qa,[e[28]||(e[28]=a("span",{class:"detail-label"},"備考:",-1)),a("span",null,d(t.applicationData.notes),1)])):b("",!0)],64)):t.applicationType==="transportation-business"?(o(),p(j,{key:3},[a("div",Wa,[e[29]||(e[29]=a("span",{class:"detail-label"},"所属月:",-1)),a("span",null,d((Ee=t.applicationData)!=null&&Ee.belongsMonth?t.applicationData.belongsMonth.replace("-","年")+"月":((Le=t.applicationData)==null?void 0:Le.submissionDate)??"-"),1)]),a("div",Ha,[e[30]||(e[30]=a("span",{class:"detail-label"},"出張内容・理由:",-1)),a("span",Ja,d(((Pe=t.applicationData)==null?void 0:Pe.tripReason)||"(未入力)"),1)]),(Ae=(je=t.applicationData)==null?void 0:je.transportationItems)!=null&&Ae.length?(o(),p("div",Ka,[e[31]||(e[31]=a("div",{class:"detail-section-title"},"交通費明細",-1)),(o(!0),p(j,null,ne(t.applicationData.transportationItems,(k,me)=>(o(),p("div",{key:me,class:"detail-item-row"},[a("span",Qa,d(me+1)+".",1),a("span",null,d(k.date),1),a("span",null,d(k.tripType),1),a("span",null,d(k.route),1),a("span",null,"¥"+d(Number(k.amount).toLocaleStr
1ing()),1),k.notes?(o(),p("span",Xa,d(k.notes),1)):b("",!0)]))),128))])):b("",!0),(Oe=(Ge=t.applicationData)==null?void 0:Ge.hotelItems)!=null&&Oe.length?(o(),p("div",Za,[e[32]||(e[32]=a("div",{class:"detail-section-title"},"ホテル明細",-1)),(o(!0),p(j,null,ne(t.applicationData.hotelItems,(k,me)=>(o(),p("div",{key:me,class:"detail-item-row"},[a("span",el,d(me+1)+".",1),a("span",null,d(k.date),1),a("span",null,d(k.hotelName),1),a("span",null,"¥"+d(Number(k.amount).toLocaleString()),1),k.notes?(o(),p("span",tl,d(k.notes),1)):b("",!0)]))),128))])):b("",!0),(qe=t.applicationData)!=null&&qe.notes?(o(),p("div",al,[e[33]||(e[33]=a("span",{class:"detail-label"},"備考:",-1)),a("span",null,d(t.applicationData.notes),1)])):b("",!0)],64)):t.applicationType==="misc-expense"?(o(),p(j,{key:4},[a("div",ll,[e[34]||(e[34]=a("span",{class:"detail-label"},"費用名:",-1)),a("span",null,d(((We=t.applicationData)==null?void 0:We.expenseName)??"-"),1)]),(He=t.applicationData)!=null&&He.notes?(o(),p("div",sl,[e[35]||(e[35]=a("span",{class:"detail-label"},"備考:",-1)),a("span",null,d(t.applicationData.notes),1)])):b("",!0)],64)):b("",!0),t.status==="approved"&&((_=t.applicationData)!=null&&_.approvalNotes)?(o(),p("div",ol,[e[36]||(e[36]=a("span",{class:"detail-label"},"承認コメント:",-1)),a("span",null,d(t.applicationData.approvalNotes),1)])):b("",!0),t.status==="rejected"&&t.rejectionReason?(o(),p("div",nl,[e[37]||(e[37]=a("span",{class:"detail-label"},"却下理由:",-1)),a("span",null,d(t.rejectionReason),1)])):b("",!0),t.attachments&&t.attachments.length>0?(o(),p("div",il,[e[38]||(e[38]=a("span",{class:"detail-label"},"添付:",-1)),a("span",null,[(o(!0),p(j,null,ne(t.attachments,k=>(o(),R(C,{key:k.id,link:"",type:"primary",size:"small",onClick:me=>ut(k)},{default:u(()=>[V(d(k.fileName),1)]),_:2},1032,["onClick"]))),128))])])):b("",!0)])]}),_:1}),l(ye,{label:"種別",width:"120"},{default:u(({row:t})=>[V(d(s(t.applicationType)),1)]),_:1}),l(ye,{label:"申請日",width:"100"},{default:u(({row:t})=>[V(d(_e(t.createdAt)),1)]),_:1}),l(ye,{label:"対象日","min-width":"120"},{default:u(({row:t})=>[t.isGroup?(o(),p(j,{key:0},[V(d(t.groupDates[0])+" 他"+d(t.groupCount-1)+"件",1)],64)):(o(),p(j,{key:1},[V(d(re(t)),1)],64))]),_:1}),l(ye,{label:"金額",align:"right",width:"110"},{default:u(({row:t})=>[V("¥"+d((t.isGroup?t.groupTotalAmount:Me(t)).toLocaleString()),1)]),_:1}),l(ye,{label:"ステータス",width:"95"},{default:u(({row:t})=>[l(J,{type:A(t.status),size:"small"},{default:u(()=>[V(d(S(t.status)),1)]),_:2},1032,["type"])]),_:1}),l(ye,{label:"操作",width:"100",align:"center"},{default:u(({row:t})=>[t.isGroup&&Ce(t)?(o(),R(C,{key:0,size:"small",type:"warning",loading:U.value===t.id,onClick:Te=>te(t)},{default:u(()=>[...e[39]||(e[39]=[V(" キャンセル ",-1)])]),_:1},8,["loading","onClick"])):t.isGroup?(o(),p("span",dl,"↓")):ge(t)?(o(),R(C,{key:2,size:"small",type:"danger",loading:f.value===t.id,onClick:Te=>ke(t)},{default:u(()=>[...e[40]||(e[40]=[V(" 削除 ",-1)])]),_:1},8,["loading","onClick"])):he(t)?(o(),R(C,{key:3,size:"small",type:"warning",loading:ve.value===t.id,onClick:Te=>X(t)},{default:u(()=>[...e[41]||(e[41]=[V(" キャンセル ",-1)])]),_:1},8,["loading","onClick"])):(o(),p("span",rl,"-"))]),_:1})]),_:1},8,["data","row-key"])),[[De,P.value]])]))])]),v.value?(o(),R(ie(Tt),{key:0,"url-list":N.value,onClose:e[13]||(e[13]=t=>v.value=!1)},null,8,["url-list"])):b("",!0)])}}}),cs=st(ss,[["__scopeId","data-v-fab498c2"]]);export{cs as default};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.