邹方成 642b3cf7dd
Some checks failed
Build docker and publish / linux (1.24.5) (push) Failing after 50s
build: 更新前端构建产物和资源文件
更新了前端构建产物包括JavaScript、CSS和HTML文件,主要涉及以下变更:

1. 新增了多个组件和工具函数,包括异常页面组件、iframe组件等
2. 更新了活动管理、产品管理、优惠券管理等业务模块
3. 优化了构建配置和依赖管理
4. 修复了一些样式和功能问题
5. 更新了测试相关文件

同时更新了部分后端服务接口和测试用例。这些变更主要是为了支持新功能和改进现有功能的用户体验。
2025-11-21 01:24:13 +08:00

2 lines
12 KiB
JavaScript

var e=Object.defineProperty,l=Object.getOwnPropertySymbols,a=Object.prototype.hasOwnProperty,t=Object.prototype.propertyIsEnumerable,o=(l,a,t)=>a in l?e(l,a,{enumerable:!0,configurable:!0,writable:!0,value:t}):l[a]=t,i=(e,l,a)=>new Promise((t,o)=>{var i=e=>{try{r(a.next(e))}catch(l){o(l)}},n=e=>{try{r(a.throw(e))}catch(l){o(l)}},r=e=>e.done?t(e.value):Promise.resolve(e.value).then(i,n);r((a=a.apply(e,l)).next())});import{d as n,r,e as s,z as u,c as d,f as c,a as p,o as m,b as v,j as f,G as g,m as y,i as j,w as h,p as b,N as _,L as x,H as w,I as k,q as C,J as V,aV as O,T as S}from"./index-BeZn6wgH.js";/* empty css *//* empty css *//* empty css */import{E as z}from"./el-upload-DaUOLfuT.js";import"./el-progress-O14AXzNU.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{_ as P}from"./index-BbMTea7d.js";import{_ as T}from"./index.vue_vue_type_script_setup_true_lang-Cwz1VPh7.js";import{_ as E}from"./index-BIoKEsJe.js";import{u as N}from"./useTable-YQ8Sp4v8.js";import{b as A,e as R,g as U,a as B,f as D,h as I}from"./product-BgjZetTQ.js";import J from"./product-search-DsJNWQzb.js";import{E as L}from"./index-BtwYQklV.js";import{E as M}from"./index-rM5MDBEe.js";import{a as $,E as F}from"./index-Dn4yxdMr.js";import{E as G,a as H}from"./index-B43cMk6T.js";import{E as Q}from"./index-DfDWpFb3.js";import{E as W}from"./index-B2-bRefJ.js";import"./cloneDeep-D72mKKmf.js";import"./el-pagination-BybCuExY.js";import"./el-table-column-Us9hXTbB.js";import"./index-s8Fl0Qzt.js";import"./index-CnhjG_Ys.js";import"./index-A3hG-0VQ.js";import"./index-DC47MImW.js";import"./_initCloneObject-BHiCRTfC.js";import"./isArrayLikeObject-D4Ef3RBY.js";import"./raf-CY4TyS52.js";import"./_baseIteratee-sVeOpCU9.js";import"./castArray-BakW2F2h.js";import"./debounce-C7sIggI-.js";import"./index-DZdoPtEQ.js";import"./el-tooltip-l0sNRNKZ.js";import"./_plugin-vue_export-helper-BCo6x5W8.js";import"./index.vue_vue_type_script_setup_true_lang-BQI7d56A.js";/* empty css *//* empty css */import"./el-popover-BY7WM4__.js";import"./el-dropdown-item-D3gOKOyu.js";import"./refs-Cw5r5QN8.js";/* empty css */import"./useTableColumns-CLIpqO4Y.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./index-DJP4F2zx.js";import"./index-D6O1cfnb.js";import"./index-gJfKG9HJ.js";import"./index-Bh_wUTwB.js";import"./token-DWNpOE8r.js";import"./use-dialog-D_t6_hoT.js";const Y={class:"mb-3 flex items-center gap-3"},q={class:"flex flex-wrap gap-1"},K=["src","onClick"],X=n({__name:"index",setup(e){const n=r({name:void 0,category_id:void 0,status:void 0}),{data:X,loading:Z,columns:ee,pagination:le,handleSizeChange:ae,handleCurrentChange:te,getData:oe,getDataDebounced:ie,searchParams:ne,resetSearchParams:re}=N({core:{apiFn:e=>D({page:e.current,page_size:e.size,name:e.name,category_id:e.category_id,status:e.status}).then(e=>({records:e.list,total:e.total,current:e.page,size:e.page_size})),apiParams:{current:1,size:20},columnsFactory:()=>[{type:"selection",width:48},{prop:"id",label:"ID",width:90,align:"center"},{prop:"name",label:"名称",minWidth:220,showOverflowTooltip:!0},{prop:"images",label:"图片",useSlot:!0,width:180,align:"center"},{prop:"category_id",label:"分类",useSlot:!0,width:160},{prop:"price",label:"价格(分)",width:140,align:"center"},{prop:"stock",label:"库存",width:120,align:"center"},{prop:"sales",label:"销量",width:120,align:"center"},{prop:"status",label:"状态",useSlot:!0,width:110,align:"center"},{prop:"actions",label:"操作",useSlot:!0,width:180}]}}),se=r(!1),ue=r("创建商品"),de=r(null),ce=r(!1),pe=r(0),me=r([]);function ve(e){try{const l=JSON.parse(e||"[]");return Array.isArray(l)?l:[]}catch(l){return[]}}const fe=s({name:"",category_id:void 0,price:void 0,stock:void 0}),ge=r([]),ye=s({}),je=r([]),he=r([]),be=u(),_e=d(()=>"/api/common/upload/wangeditor"),xe=d(()=>({Authorization:be.accessToken})),we=e=>{const i=((e,i)=>{for(var n in i||(i={}))a.call(i,n)&&o(e,n,i[n]);if(l)for(var n of l(i))t.call(i,n)&&o(e,n,i[n]);return e})({},ne),r=e||n.value;Object.assign(i,r),ie(i)},ke=r(null),Ce=r([]),Ve=r(!1);function Oe(e){Ce.value=e.map(e=>e.id),Ve.value=e.length===X.value.length&&X.value.length>0}function Se(){var e;const l=null==(e=ke.value)?void 0:e.elTableRef;if(l&&(l.clearSelection(),Ve.value))for(const a of X.value)l.toggleRowSelection(a,!0)}function ze(){return i(this,null,function*(){if(0===Ce.value.length)return;const e=yield O.prompt("请输入统一库存数量","批量改库存",{inputType:"number",confirmButtonText:"确定",cancelButtonText:"取消"}).catch(()=>null),l=Number(null==e?void 0:e.value);!e||isNaN(l)||l<0||(yield I({ids:Ce.value,stock:l}),yield oe(),Ce.value=[],Ve.value=!1)})}function Pe(){return i(this,null,function*(){if(0===Ce.value.length)return;(yield O.confirm("确认批量上架选中商品?","提示",{type:"warning"}).catch(()=>!1))&&(yield I({ids:Ce.value,status:1}),yield oe(),Ce.value=[],Ve.value=!1)})}function Te(){return i(this,null,function*(){if(0===Ce.value.length)return;(yield O.confirm("确认批量下架选中商品?","提示",{type:"warning"}).catch(()=>!1))&&(yield I({ids:Ce.value,status:2}),yield oe(),Ce.value=[],Ve.value=!1)})}function Ee(){ue.value="创建商品",de.value=null,Object.assign(fe,{name:"",category_id:void 0,price:void 0,stock:void 0,status:1}),je.value=[],he.value=[],se.value=!0}function Ne(){return i(this,null,function*(){fe.name&&fe.category_id&&fe.price&&fe.stock&&(fe.images_json=JSON.stringify(je.value),de.value?yield A(de.value,fe):yield R(fe),se.value=!1,yield oe())})}function Ae(){return i(this,null,function*(){const e=yield B({page:1,page_size:100});ge.value=e.list.map(e=>({id:e.id,name:e.name}));for(const l of e.list)ye[l.id]=l.name})}function Re(e,l,a){var t,o;let i=(null==(t=null==e?void 0:e.data)?void 0:t.url)||(null==e?void 0:e.url)||"";if(!i&&"string"==typeof e)try{const l=JSON.parse(e);i=(null==(o=null==l?void 0:l.data)?void 0:o.url)||(null==l?void 0:l.url)||""}catch(n){}i&&(je.value.push(i),he.value=je.value.map((e,l)=>({name:`img_${l}`,url:e})))}function Ue(e,l){const a=he.value.findIndex(l=>l.name===e.name||l.url===e.url);a>-1&&(je.value.splice(a,1),he.value.splice(a,1))}return c(()=>i(this,null,function*(){yield Ae(),yield oe()})),(e,l)=>{const a=_,t=L,o=M,r=V,s=F,u=H,d=G,c=z,N=$,A=Q,R=W;return m(),p("div",null,[v(J,{modelValue:n.value,"onUpdate:modelValue":l[0]||(l[0]=e=>n.value=e),onSearch:we,onReset:j(re)},null,8,["modelValue","onReset"]),f("div",Y,[v(a,{type:"primary",onClick:Ee},{default:h(()=>[...l[11]||(l[11]=[b("创建商品",-1)])]),_:1}),v(t,{modelValue:Ve.value,"onUpdate:modelValue":l[1]||(l[1]=e=>Ve.value=e),onChange:Se},{default:h(()=>[...l[12]||(l[12]=[b("全选本页",-1)])]),_:1},8,["modelValue"]),v(a,{disabled:0===Ce.value.length,onClick:ze},{default:h(()=>[...l[13]||(l[13]=[b("批量改库存",-1)])]),_:1},8,["disabled"]),v(a,{disabled:0===Ce.value.length,onClick:Pe,type:"success"},{default:h(()=>[...l[14]||(l[14]=[b("批量上架",-1)])]),_:1},8,["disabled"]),v(a,{disabled:0===Ce.value.length,onClick:Te,type:"warning"},{default:h(()=>[...l[15]||(l[15]=[b("批量下架",-1)])]),_:1},8,["disabled"])]),v(E,{columns:j(ee),"onUpdate:columns":l[2]||(l[2]=e=>x(ee)?ee.value=e:null),loading:j(Z),onRefresh:j(oe)},null,8,["columns","loading","onRefresh"]),v(P,{loading:j(Z),data:j(X),columns:j(ee),tableLayout:"auto",pagination:j(le),onSelectionChange:Oe,ref_key:"tableRef",ref:ke,"onPagination:sizeChange":j(ae),"onPagination:currentChange":j(te)},{status:h(({row:e})=>[v(o,{type:1===e.status?"success":"danger"},{default:h(()=>[b(C(1===e.status?"上架":"下架"),1)]),_:2},1032,["type"])]),category_id:h(({row:e})=>[v(o,{type:"primary"},{default:h(()=>[b(C(j(ye)[e.category_id]||e.category_id),1)]),_:2},1024)]),images:h(({row:e})=>[f("div",q,[(m(!0),p(w,null,k(ve(e.images_json),(l,a)=>(m(),p("img",{key:a,src:l,class:"w-14 h-14 object-cover rounded cursor-pointer border",onClick:l=>function(e,l=0){me.value=e,pe.value=l,ce.value=!0}(ve(e.images_json),a)},null,8,K))),128))])]),actions:h(({row:e})=>[v(T,{type:"edit",onClick:l=>function(e){ue.value="编辑商品",de.value=e.id,Object.assign(fe,{name:e.name,category_id:e.category_id,price:e.price,stock:e.stock,status:e.status});try{const l=JSON.parse(e.images_json||"[]");je.value=Array.isArray(l)?l:[],he.value=je.value.map((e,l)=>({name:`img_${l}`,url:e}))}catch(l){je.value=[],he.value=[]}se.value=!0}(e)},null,8,["onClick"]),v(T,{type:"delete",onClick:l=>function(e){return i(this,null,function*(){var l,a,t;try{const l=X.value.find(l=>l.id===e),a=(null==l?void 0:l.name)||"该商品";yield O.confirm(`确定要删除商品"${a}"吗?此操作不可恢复`,"删除确认",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning",beforeClose:(e,l,a)=>{"confirm"===e?(l.confirmButtonLoading=!0,a()):a()}}),yield U(e),S.success({message:`"${a}"已成功删除`,duration:3e3}),yield oe()}catch(o){if("cancel"===o)return;const i=(null==(a=null==(l=null==o?void 0:o.response)?void 0:l.data)?void 0:a.message)||o.message||"删除失败",n=(null==(t=X.value.find(l=>l.id===e))?void 0:t.name)||"该商品";S.error({message:`"${n}"删除失败:${i}`,duration:4e3})}})}(e.id)},null,8,["onClick"])]),_:1},8,["loading","data","columns","pagination","onPagination:sizeChange","onPagination:currentChange"]),v(A,{modelValue:se.value,"onUpdate:modelValue":l[9]||(l[9]=e=>se.value=e),title:ue.value,width:"640px"},{footer:h(()=>[v(a,{onClick:l[8]||(l[8]=e=>se.value=!1)},{default:h(()=>[...l[17]||(l[17]=[b("取消",-1)])]),_:1}),v(a,{type:"primary",onClick:Ne},{default:h(()=>[...l[18]||(l[18]=[b("提交",-1)])]),_:1})]),default:h(()=>[v(N,{model:j(fe),"label-width":"110px"},{default:h(()=>[v(s,{label:"名称"},{default:h(()=>[v(r,{modelValue:j(fe).name,"onUpdate:modelValue":l[3]||(l[3]=e=>j(fe).name=e)},null,8,["modelValue"])]),_:1}),v(s,{label:"分类"},{default:h(()=>[v(d,{modelValue:j(fe).category_id,"onUpdate:modelValue":l[4]||(l[4]=e=>j(fe).category_id=e),modelModifiers:{number:!0},onVisibleChange:Ae},{default:h(()=>[(m(!0),p(w,null,k(ge.value,e=>(m(),g(u,{key:e.id,label:e.name,value:e.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),v(s,{label:"图片"},{default:h(()=>[v(c,{action:j(_e),name:"file",accept:"image/*","list-type":"picture-card",headers:j(xe),"on-success":Re,"on-remove":Ue,"file-list":he.value},{default:h(()=>[...l[16]||(l[16]=[f("i",{class:"el-icon"},[f("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[f("path",{fill:"currentColor",d:"M480 512h64V256h-64zm32 288a32 32 0 1 0 0-64a32 32 0 0 0 0 64"})])],-1)])]),_:1},8,["action","headers","file-list"])]),_:1}),v(s,{label:"价格(分)"},{default:h(()=>[v(r,{modelValue:j(fe).price,"onUpdate:modelValue":l[5]||(l[5]=e=>j(fe).price=e),modelModifiers:{number:!0}},null,8,["modelValue"])]),_:1}),v(s,{label:"库存"},{default:h(()=>[v(r,{modelValue:j(fe).stock,"onUpdate:modelValue":l[6]||(l[6]=e=>j(fe).stock=e),modelModifiers:{number:!0}},null,8,["modelValue"])]),_:1}),v(s,{label:"状态"},{default:h(()=>[v(d,{modelValue:j(fe).status,"onUpdate:modelValue":l[7]||(l[7]=e=>j(fe).status=e),modelModifiers:{number:!0}},{default:h(()=>[v(u,{value:1,label:"上架"}),v(u,{value:2,label:"下架"})]),_:1},8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"]),ce.value?(m(),g(R,{key:0,"url-list":me.value,"initial-index":pe.value,onClose:l[10]||(l[10]=e=>ce.value=!1)},null,8,["url-list","initial-index"])):y("",!0)])}}});export{X as default};