import{$ as e,H as t,L as n,P as r,V as i,Wt as a,_ as o,d as s,et as c,f as l,i as u,lt as d,p as f,st as p,u as m,v as h,z as g}from"./runtime-core.esm-bundler-DbRZbT7v.js";import{l as _,o as v,s as y}from"./index-DK5nh4op.js";import"./request-BcX6wdRT.js";import{r as b}from"./inventory-B_vJhWAi.js";var x={class:`p-6 space-y-4`},S={class:`bg-white rounded-2xl border border-gray-100 shadow-sm p-4 flex items-center flex-wrap gap-3`},C={class:`bg-white rounded-2xl border border-gray-100 shadow-sm`},w={class:`flex items-center justify-between px-5 py-4 border-b border-gray-50`},T={class:`px-2`},E={class:`px-5 py-3 border-t border-gray-50`},D={__name:`index`,setup(D){let O=d([]),k=d(0),A=d(!1),j=d(!1),M=d(!1),N=p({order_no:``,status:``}),P=p({page:1,per_page:20}),F=d(null),I=p({id:null,order_no:``,supplier_id:``,total_amount:0,remark:``}),L=d(!1),R={order_no:[{required:!0,message:`请输入采购单号`,trigger:`blur`}]},z={0:`待审批`,2:`已通过`,4:`已驳回`},B={0:`warning`,2:`success`,4:`danger`};async function V(){A.value=!0;try{let e=await b.getList({...N,...P});O.value=e.data?.list||e.data?.data||[],k.value=e.data?.total||0}finally{A.value=!1}}function H(){P.page=1,V()}function U(){Object.assign(N,{order_no:``,status:``}),H()}function W(){L.value=!1,Object.assign(I,{id:null,order_no:``,supplier_id:``,total_amount:0,remark:``}),j.value=!0}async function G(e){if(e.status>=2){y.warning(`只能编辑待审批的采购单`);return}L.value=!0;let t=(await b.getDetail(e.id)).data;Object.assign(I,{id:t.id,order_no:t.order_no,supplier_id:t.supplier_id||``,total_amount:t.total_amount,remark:t.remark||``}),j.value=!0}async function K(){F.value&&await F.value.validate(async e=>{if(e){M.value=!0;try{L.value?(await b.update(I.id,I),y.success(`更新成功`)):(await b.create(I),y.success(`创建成功`)),j.value=!1,V()}finally{M.value=!1}}})}async function q(e){if(e.status>=2){y.warning(`只能删除待审批的采购单`);return}await v.confirm(`确定删除采购单「${e.order_no}」吗?`,`删除确认`,{type:`warning`}),await b.delete(e.id),y.success(`删除成功`),V()}async function J(e,t){let n=t===2?`确认通过?`:`确认驳回?`;await v.confirm(n,`审批确认`,{type:`warning`}),await b.audit(e.id,{status:t}),y.success(`操作成功`),V()}function Y(e){P.page=e,V()}function X(e){P.per_page=e,P.page=1,V()}return r(()=>V()),(r,d)=>{let p=i(`el-input`),v=i(`el-option`),y=i(`el-select`),b=i(`el-button`),D=i(`el-table-column`),V=i(`el-tag`),Z=i(`el-table`),Q=i(`el-pagination`),$=i(`el-form-item`),ee=i(`el-input-number`),te=i(`el-form`),ne=i(`el-dialog`),re=t(`loading`);return n(),f(`div`,x,[m(`div`,S,[h(p,{modelValue:N.order_no,"onUpdate:modelValue":d[0]||=e=>N.order_no=e,placeholder:`采购单号`,style:{width:`180px`},clearable:``,onKeydown:_(H,[`enter`])},null,8,[`modelValue`]),h(y,{modelValue:N.status,"onUpdate:modelValue":d[1]||=e=>N.status=e,placeholder:`状态`,clearable:``,style:{width:`120px`}},{default:e(()=>[(n(),f(u,null,g(z,(e,t)=>h(v,{key:t,label:e,value:Number(t)},null,8,[`label`,`value`])),64))]),_:1},8,[`modelValue`]),h(b,{type:`primary`,onClick:H},{default:e(()=>[...d[10]||=[o(`查询`,-1)]]),_:1}),h(b,{onClick:U},{default:e(()=>[...d[11]||=[o(`重置`,-1)]]),_:1})]),m(`div`,C,[m(`div`,w,[d[13]||=m(`div`,{class:`flex items-center gap-3`},[m(`span`,{class:`font-medium text-gray-700`},`采购单列表`)],-1),h(b,{type:`primary`,onClick:W},{default:e(()=>[...d[12]||=[o(`新增采购单`,-1)]]),_:1})]),m(`div`,T,[c((n(),s(Z,{data:O.value,style:{width:`100%`}},{default:e(()=>[h(D,{prop:`order_no`,label:`采购单号`,"min-width":`160`}),h(D,{label:`供应商`,"min-width":`140`},{default:e(({row:e})=>[o(a(e.supplier?.name||`-`),1)]),_:1}),h(D,{prop:`total_amount`,label:`总金额`,"min-width":`110`,align:`right`}),h(D,{label:`状态`,width:`100`,align:`center`},{default:e(({row:t})=>[h(V,{type:B[t.status],size:`small`},{default:e(()=>[o(a(z[t.status]),1)]),_:2},1032,[`type`])]),_:1}),h(D,{prop:`created_at`,label:`创建时间`,"min-width":`160`}),h(D,{label:`操作`,width:`260`,fixed:`right`,align:`center`},{default:e(({row:t})=>[t.status===0?(n(),s(b,{key:0,size:`small`,type:`success`,text:``,onClick:e=>J(t,2)},{default:e(()=>[...d[14]||=[o(`审批通过`,-1)]]),_:1},8,[`onClick`])):l(``,!0),t.status===0?(n(),s(b,{key:1,size:`small`,type:`warning`,text:``,onClick:e=>J(t,4)},{default:e(()=>[...d[15]||=[o(`驳回`,-1)]]),_:1},8,[`onClick`])):l(``,!0),t.status<2?(n(),s(b,{key:2,size:`small`,type:`primary`,text:``,onClick:e=>G(t)},{default:e(()=>[...d[16]||=[o(`编辑`,-1)]]),_:1},8,[`onClick`])):l(``,!0),t.status<2?(n(),s(b,{key:3,size:`small`,type:`danger`,text:``,onClick:e=>q(t)},{default:e(()=>[...d[17]||=[o(`删除`,-1)]]),_:1},8,[`onClick`])):l(``,!0)]),_:1})]),_:1},8,[`data`])),[[re,A.value]])]),m(`div`,E,[h(Q,{"current-page":P.page,"onUpdate:currentPage":d[2]||=e=>P.page=e,"page-size":P.per_page,"onUpdate:pageSize":d[3]||=e=>P.per_page=e,total:k.value,"page-sizes":[10,20,50],layout:`total,sizes,prev,pager,next,jumper`,background:``,onCurrentChange:Y,onSizeChange:X},null,8,[`current-page`,`page-size`,`total`])])]),h(ne,{modelValue:j.value,"onUpdate:modelValue":d[9]||=e=>j.value=e,title:L.value?`编辑采购单`:`新增采购单`,width:`550px`,"destroy-on-close":``},{footer:e(()=>[h(b,{onClick:d[8]||=e=>j.value=!1},{default:e(()=>[...d[18]||=[o(`取消`,-1)]]),_:1}),h(b,{type:`primary`,loading:M.value,onClick:K},{default:e(()=>[...d[19]||=[o(`确定`,-1)]]),_:1},8,[`loading`])]),default:e(()=>[h(te,{ref_key:`formRef`,ref:F,model:I,rules:R,"label-width":`90px`},{default:e(()=>[h($,{label:`采购单号`,prop:`order_no`},{default:e(()=>[h(p,{modelValue:I.order_no,"onUpdate:modelValue":d[4]||=e=>I.order_no=e},null,8,[`modelValue`])]),_:1}),h($,{label:`供应商ID`},{default:e(()=>[h(p,{modelValue:I.supplier_id,"onUpdate:modelValue":d[5]||=e=>I.supplier_id=e,placeholder:`供应商ID`},null,8,[`modelValue`])]),_:1}),h($,{label:`总金额`},{default:e(()=>[h(ee,{modelValue:I.total_amount,"onUpdate:modelValue":d[6]||=e=>I.total_amount=e,min:0,precision:2,style:{width:`100%`}},null,8,[`modelValue`])]),_:1}),h($,{label:`备注`},{default:e(()=>[h(p,{modelValue:I.remark,"onUpdate:modelValue":d[7]||=e=>I.remark=e,type:`textarea`,rows:3},null,8,[`modelValue`])]),_:1})]),_:1},8,[`model`])]),_:1},8,[`modelValue`,`title`])])}}};export{D as default};