1 line
3.9 KiB
JavaScript
Executable File
1 line
3.9 KiB
JavaScript
Executable File
import{B as e,F as t,Gt as n,H as r,R as i,U as a,a as o,b as s,d as c,et as l,f as u,m as d,t as f,tt as p,ut as m,v as h,y as g}from"./_plugin-vue_export-helper-BmDUjPB3.js";import{c as _,o as v,r as y}from"./index-BdquF2dM.js";import{t as b}from"./request-D2yY8ZUb.js";import{t as x}from"./warehouse-DjgOFCsD.js";function S(e){return b.get(`/stocks`,{params:e})}function C(e){return b.put(`/stocks/update-threshold`,e)}var w={class:`stock-container`},T={style:{"margin-bottom":`15px`,display:`flex`,gap:`10px`,"flex-wrap":`wrap`}},E=f(s({__name:`Stock`,setup(s){let f=v(),b=m([]),E=m(!1),D=m(1),O=m(10),k=m(0),A=m([]),j=m({warehouseId:``,keyword:``}),M=async()=>{let e=await x({pageSize:100});e.code===200&&(A.value=e.data.list)},N=async()=>{E.value=!0;try{let e=await S({warehouseId:j.value.warehouseId,keyword:j.value.keyword,currentPage:D.value,pageSize:O.value});e.code===200&&(b.value=e.data.list,k.value=e.data.total)}finally{E.value=!1}},P=()=>{j.value={warehouseId:``,keyword:``},D.value=1,N()},F=e=>e.quantity<=0?`danger`:e.quantity<=e.warningThreshold?`warning`:`success`,I=e=>e.quantity<=0?`缺货`:e.quantity<=e.warningThreshold?`预警`:`正常`,L=async(e,t)=>{let n=await C({skuCode:e.skuCode,warehouseId:e.warehouseId,threshold:t});n.code===200?y.success(`预警阈值更新成功`):y.error(n.message||`更新失败`)},R=e=>{f.push(`/warehouse/stock-detail/${e.id}`)};return t(()=>{M(),N()}),(t,s)=>{let f=r(`el-option`),m=r(`el-select`),v=r(`el-input`),y=r(`el-button`),x=r(`el-table-column`),S=r(`el-input-number`),C=r(`el-tag`),M=r(`el-table`),z=r(`el-pagination`),B=r(`el-card`),V=a(`loading`);return i(),d(`div`,w,[g(B,null,{header:l(()=>[...s[4]||=[c(`div`,{class:`card-header`},[c(`span`,null,`库存管理`)],-1)]]),default:l(()=>[c(`div`,T,[g(m,{modelValue:j.value.warehouseId,"onUpdate:modelValue":s[0]||=e=>j.value.warehouseId=e,placeholder:`选择仓库`,clearable:``,style:{width:`180px`}},{default:l(()=>[(i(!0),d(o,null,e(A.value,e=>(i(),u(f,{key:e.id,label:e.name,value:e.id},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`]),g(v,{modelValue:j.value.keyword,"onUpdate:modelValue":s[1]||=e=>j.value.keyword=e,placeholder:`商品名称/编码/条码`,style:{width:`250px`},clearable:``,onKeyup:_(N,[`enter`])},null,8,[`modelValue`]),g(y,{type:`primary`,onClick:N},{default:l(()=>[...s[5]||=[h(`查询`,-1)]]),_:1}),g(y,{onClick:P},{default:l(()=>[...s[6]||=[h(`重置`,-1)]]),_:1})]),p((i(),u(M,{data:b.value,border:``,style:{width:`100%`}},{default:l(()=>[g(x,{prop:`skuCode`,label:`商品编码`,width:`150`}),g(x,{prop:`skuName`,label:`商品名称`,"min-width":`200`}),g(x,{prop:`barcode`,label:`条码`,width:`130`}),g(x,{prop:`warehouseName`,label:`仓库`,width:`150`}),g(x,{prop:`quantity`,label:`实物库存`,width:`100`}),g(x,{prop:`lockedQuantity`,label:`锁定库存`,width:`100`}),g(x,{prop:`availableQuantity`,label:`可用库存`,width:`100`}),g(x,{prop:`warningThreshold`,label:`预警阈值`,width:`120`},{default:l(({row:e})=>[g(S,{modelValue:e.warningThreshold,"onUpdate:modelValue":t=>e.warningThreshold=t,min:0,size:`small`,style:{width:`100px`},onChange:t=>L(e,t)},null,8,[`modelValue`,`onUpdate:modelValue`,`onChange`])]),_:1}),g(x,{prop:`status`,label:`状态`,width:`100`},{default:l(({row:e})=>[g(C,{type:F(e)},{default:l(()=>[h(n(I(e)),1)]),_:2},1032,[`type`])]),_:1}),g(x,{label:`操作`,width:`120`,fixed:`right`},{default:l(({row:e})=>[g(y,{size:`small`,type:`primary`,onClick:t=>R(e)},{default:l(()=>[...s[7]||=[h(`详情`,-1)]]),_:1},8,[`onClick`])]),_:1})]),_:1},8,[`data`])),[[V,E.value]]),g(z,{"current-page":D.value,"onUpdate:currentPage":s[2]||=e=>D.value=e,"page-size":O.value,"onUpdate:pageSize":s[3]||=e=>O.value=e,"page-sizes":[10,20,50],total:k.value,layout:`total, sizes, prev, pager, next, jumper`,onSizeChange:N,onCurrentChange:N,style:{"margin-top":`20px`,"text-align":`right`}},null,8,[`current-page`,`page-size`,`total`])]),_:1})])}}}),[[`__scopeId`,`data-v-b66beaf0`]]);export{E as default}; |