import{k as N,E as u}from"./index.BsMIUALc.js";import{a as T,aB as O,r as i,q as j,Z as G,aj as F,J as g,o as S,K as H,S as E,M as h,H as J,u as x,t as d}from"./vue.D1BjjNmv.js";import{createCrudOptions as K}from"./crud.BqqIB6sX.js";import P from"./index.DOiz1QTB.js";import{_ as Z}from"./index.vue_vue_type_script_setup_true_lang.BYZi5rqC.js";import{_ as z}from"./index.vue_vue_type_script_setup_true_lang.Yqz3b2Wi.js";import{_ as I}from"./index.vue_vue_type_script_setup_true_lang.85AnnZmM.js";import{_ as Q}from"./index.vue_vue_type_style_index_0_lang.DqgS05yY.js";import W from"./SettlementDialog.BcFfYhHh.js";import{U as X,A as Y,G as M}from"./api.DGx5T5Fx.js";import"./_plugin-vue_export-helper.DlAUqK2U.js";import"./index.vue_vue_type_script_setup_true_lang.ChoZpNUZ.js";import"./api.5e6j2WLv.js";import"./api.CoBdXsPO.js";import"./api.DryHg6Ox.js";import"./index.vue_vue_type_script_setup_true_lang.DgPlJlFd.js";import"./index.CHq1lA6V.js";import"./api.B_H3gF8l.js";import"./crud.Citzi9qU.js";import"./columnPermission.sDZRKcsT.js";import"./index.vue_vue_type_script_setup_true_lang.BDCpzL1F.js";import"./index.vue_vue_type_script_setup_true_lang.CgOIHJwT.js";import"./api.ByO9Beo-.js";import"./index.CQsbCM8C.js";import"./index.Cc_TVhWA.js";const ee=T({name:"borrow"}),Ve=T({...ee,setup(oe){const $=O(),{crudBinding:q,crudRef:v,crudExpose:m}=N({createCrudOptions:K}),c=i(!1),w=i(!1),f=i(!1),p=i(!1),l=i(!1),n=i({}),b=i(!1),L=i({});function y(o,e,t){c.value=!1,d(()=>{n.value={...t||{},borrow_type:o,mode:e},console.log("borrowForm.value:::",n.value)}),o===1?(console.log("mode:::",e),e==="view"?l.value=!0:f.value=!0):o===2?(console.log("mode:::",e),e==="view"?l.value=!0:(n.value={},p.value=!0)):o===0&&(e==="view"?l.value=!0:w.value=!0)}async function _(o){try{o.mode==="edit"?(await X(o),u.success("编辑成功")):(await Y(o),u.success("添加成功")),v.value&&v.value.doRefresh&&v.value.doRefresh(),m.doRefresh()}catch(e){console.error(o.mode==="edit"?"编辑失败":"提交失败",e),u.error(o.mode==="edit"?"编辑失败":"提交失败")}}async function A(o){try{m.doRefresh()}catch(e){console.error("提交失败",e)}}async function B(o){const e=o.detail;console.log("row:::",e),l.value=!0,console.log("showCollectDialog:::",l.value),d(()=>{n.value={...e,mode:"collect"}})}async function R(o){const e=o.detail;console.log("row:::",e),l.value=!0,d(()=>{n.value={...e,mode:"return"}}),console.log("showReturnDialog:::",l.value)}async function V(o){const e=o.detail;y(e.borrow_type,"view",e)}async function C(o){const e=o.detail;y(e.borrow_type,"edit",e)}async function k(o){const e=o.detail;y(e.borrow_type)}async function U(o){const e=o.detail;console.log("row:::",e);try{const t=await M(e.id),a=(t==null?void 0:t.data)||t;b.value=!0,d(()=>{n.value={...a||{},mode:"settlement"}})}catch(t){console.error("获取结算详情失败:",t),u.error("获取结算详情失败")}}async function D(o){const e=await M(o.detail.id);e.code==2e3?(b.value=!0,d(()=>{n.value={...e.data,mode:"renew"}})):u.error("获取续借详情失败")}let s=null;return j(()=>{window.addEventListener("borrow-view",V),window.addEventListener("borrow-edit",C),window.addEventListener("borrow-remove",k),window.addEventListener("borrow-collect",B),window.addEventListener("borrow-return",R),window.addEventListener("borrow-settlement",U),window.addEventListener("renew-device",D);const o=document.querySelector(".borrow-page .fs-actionbar");if(!o)return;function e(){if(o&&!o.querySelector(".my-create-btn")){const t=document.createElement("button");t.className="el-button el-button--primary el-button--default my-create-btn",t.innerHTML="创建借用单",t.onclick=()=>{c.value=!0},o.append(t)}}e(),s=new MutationObserver((t,a)=>{e(),a.disconnect()}),s.observe(o,{childList:!0}),m.doSearch({form:{status:Number($.query.status)||""}})}),G(()=>{s&&(s.disconnect(),s=null),window.removeEventListener("borrow-view",V),window.removeEventListener("borrow-edit",C),window.removeEventListener("borrow-remove",k),window.removeEventListener("borrow-collect",B),window.removeEventListener("borrow-return",R),window.removeEventListener("borrow-settlement",U),window.removeEventListener("renew-device",D)}),(o,e)=>{const t=F("fs-crud"),a=F("fs-page");return S(),g(a,{class:"borrow-page"},{default:H(()=>[E(t,J({ref_key:"crudRef",ref:v},x(q)),null,16),E(P,{visible:c.value,"onUpdate:visible":e[0]||(e[0]=r=>c.value=r),onSelect:y},null,8,["visible"]),w.value?(S(),g(Z,{key:0,visible:w.value,"onUpdate:visible":e[1]||(e[1]=r=>w.value=r),modelValue:n.value,onSubmit:_,onRefresh:e[2]||(e[2]=r=>x(m).doRefresh())},null,8,["visible","modelValue"])):h("",!0),f.value?(S(),g(z,{key:1,visible:f.value,"onUpdate:visible":e[3]||(e[3]=r=>f.value=r),modelValue:n.value,lastFormSnapshot:L.value,"onUpdate:lastFormSnapshot":e[4]||(e[4]=r=>L.value=r),onSubmit:_},null,8,["visible","modelValue","lastFormSnapshot"])):h("",!0),p.value?(S(),g(I,{key:2,visible:p.value,"onUpdate:visible":e[5]||(e[5]=r=>p.value=r),modelValue:n.value,onSubmit:_},null,8,["visible","modelValue"])):h("",!0),E(Q,{visible:l.value,"onUpdate:visible":e[6]||(e[6]=r=>l.value=r),modelValue:n.value,onSubmit:A},null,8,["visible","modelValue"]),E(W,{visible:b.value,"onUpdate:visible":e[7]||(e[7]=r=>b.value=r),modelValue:n.value},null,8,["visible","modelValue"])]),_:1})}}});export{Ve as default};