Files
hedena_gold/apps/admin-panel/dist/assets/create-CBMy3PHE.js
T
s.esmaeiliandCursor d316d15335 Commit admin and user-app release builds after order and panel polish.
Includes the Dashboard CSS comment fix needed for the admin production build.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-16 23:40:39 +03:30

2 lines
11 KiB
JavaScript

import{G as be,x as P,d as xe,s as we,u as Ie,v as ke,c as U,w as i,f as E,k as O,r as p,o as d,p as s,q as V,e as b,a as x,b as $,F as k,m as z,t as w,B as Ce,y as F,g as A,A as L,j as qe,_ as Ue}from"./index-QQcP5-AC.js";import{I as R}from"./Icon-B9FXOmlS.js";import{X as Se}from"./model-m8OsHE_l.js";import{b as Ne}from"./productListModel-djtXLBPE.js";import{u as ze}from"./auth-CP16SSo9.js";import"./filters-B9z4I-pb.js";import"./index-DT4Uze1z.js";const H="admin_cart_items",Pe=be("cart",{state:()=>({items:[]}),actions:{addToCart(l){const g=this.items.findIndex(y=>y.pid==l.pid&&y.vid==l.vid),v=l.product.variants_all.filter(y=>y.id===l.vid)[0];v&&!(!v.is_pre_order&&v.qty===0)&&(g==-1?this.items.push(l):(this.items[g].product=l.product,this.items[g].qty=l.qty))},setItems(l){this.items=l,localStorage.setItem(H,JSON.stringify(l))},add(l){this.addToCart(l),this.setItems(this.items)},remove(l){const g=this.items.findIndex(v=>v.pid==l.pid&&v.vid==l.vid);g>-1&&this.items.splice(g,1),this.setItems(this.items)},updateItemQuantity(l){this.items[l.index].qty=l.quantity,this.setItems(this.items)},clear(){this.items=[],this.setItems(this.items)},async init(){try{const l=JSON.parse(localStorage.getItem(H)??"[]")||[],g=l.map(y=>y.product.id);if(g.length===0){this.setItems([]);return}const{data:v}=await P.post("product/variant",{products_id:g});if(v){const y=[];for(const S of l){const u=v.find(T=>T.id==S.product.id);u&&(!u.variants_all[0].is_pre_order&&u.variants_all[0].qty===0||y.push({vid:S.vid,pid:u.id,product:u,qty:S.qty,promotion_id:u.promotion&&u.promotion.id?u.promotion.id:null}))}this.setItems(y)}}catch(l){console.log("error in cart",l)}}}}),Be=["src"],Oe={key:1,class:"flex items-center"},Ve=["src"],$e={key:4,class:"flex"},Le={style:{width:"max-content"}},Re={class:"grid-5"},Te={class:"totals"},Y="/img/no-items.png",je=xe({__name:"create",setup(l){const g=qe(),v=we(),y=Ie(),S=ze(),u=Pe(),T=t=>!!y.hasPermission(t),Z=Ne(),ee=O(null),N=O(!1),G=O([]),J=O({}),te={1:"ثبت سفارش",2:"تایید مدیر سیستم",3:"در حال تامین",4:"در حال آماده سازی",5:"ارسال",6:"تحویل مشتری"},n=F({customer_id:void 0,sts:void 0,type:void 0,note:"",shipping_address:{reciver_fname:"",reciver_lname:"",province:"",city:"",zipcode:"",reciver_phone:"",reciver_fixed_phone:"",address:""}}),_=F({}),ae=A(()=>{var t;return(t=S.user)==null?void 0:t.id}),h=A(()=>u.items),se=[{title:"حذف",dataIndex:"delete",width:60,align:"center"},{title:"کد محصول",dataIndex:"pid",align:"center",width:90},{title:"محصول",dataIndex:"product"},{title:"اجرت",dataIndex:"wage",align:"center"},{title:"تعداد",dataIndex:"qty",align:"center",width:140},{title:"وزن",dataIndex:"weight",align:"center",width:90},{title:"مجموع",dataIndex:"total",align:"center"}],m=F({});function I(t){return t.product.variants_all.find(e=>e.id===t.vid)??{}}function ie(t){var e,o,c;return((e=t==null?void 0:t.thumb)==null?void 0:e.full)??((c=(o=t==null?void 0:t.ProductImage)==null?void 0:o[0])==null?void 0:c.image)??Y}const ne=A(()=>{let t=0;for(const e of h.value)t+=Number(I(e).grams??0);return t});function oe(t){return Number(I(t).grams??0)*t.qty}function le(t){const e=h.value[t];if(!e)return 1/0;const o=Number(I(e).qty??0);return o>0?o:1/0}function re(t,e){u.updateItemQuantity({index:t,quantity:Number(e)})}function de(t,e){ue(t,String(e.key))}function ue(t,e){u.add({vid:e,pid:t.id,product:t,qty:1,promotion_id:t.promotion&&t.promotion.id?t.promotion.id:null}),L.info("اضافه شد")}function pe(t){const e=I(t);m.id=e.id,m.grams=Number(e.grams??0)}async function ce(){var t,e;if(!(!m.id||!m.grams))try{N.value=!0;const o=h.value.find(c=>c.vid===m.id);await P.post("add/variant",{product_id:o==null?void 0:o.pid,title:`${m.grams} گرم`,grams:m.grams}),await u.init(),m.id=void 0,m.grams=void 0}catch(o){L.error(((e=(t=o==null?void 0:o.response)==null?void 0:t.data)==null?void 0:e.message)??"خطا در ثبت وزن")}finally{N.value=!1}}function me(t,e){var o,c;return String(((c=(o=e==null?void 0:e.children)==null?void 0:o[0])==null?void 0:c.children)??"").toLowerCase().includes(t.toLowerCase())}function ve(){return Object.keys(_).forEach(t=>delete _[t]),n.customer_id||(_.customer_id="مقدار را وارد نمایید"),n.sts===void 0&&(_.sts="مقدار را وارد نمایید"),n.type===void 0&&(_.type="مقدار را وارد نمایید"),Object.keys(_).length===0}async function W(){var t,e;if(ve())try{N.value=!0;const o=h.value.map(c=>{const j=I(c);return{vid:c.vid,qty:c.qty,percent:j.percentage_pay,promotion_id:c.promotion_id}});await P.post("order",{...n,reagent_id:ae.value,app:"app",order_items:o}),L.info("عملیات با موفقیت انجام شد"),u.clear(),g.push("/order/list")}catch(o){console.log(o),L.error(((e=(t=o==null?void 0:o.response)==null?void 0:t.data)==null?void 0:e.message)??"خطا در ثبت اطلاعات.")}finally{N.value=!1}}return ke(async()=>{try{const[t,e]=await Promise.all([P.get("order/type"),P.post("single-customer",{page:1,limit:500})]);J.value=t.data,G.value=e.data.rows??[]}catch(t){console.log(t)}await u.init()}),(t,e)=>{const o=p("a-button"),c=p("a-menu-item"),j=p("a-menu"),_e=p("a-dropdown"),X=p("a-input-number"),fe=p("a-table"),M=p("a-select-option"),Q=p("a-select"),f=p("a-form-item"),C=p("a-input"),D=p("a-textarea"),ge=p("a-tag"),ye=p("a-form"),K=p("a-card"),he=p("a-spin");return T("order.create")?(d(),U(he,{key:0,spinning:N.value},{default:i(()=>[s(K,{title:"لیست محصولات",class:"page-card"},{default:i(()=>[s(Se,{ref_key:"tblProducts",ref:ee,model:V(Z),"mobile-cards":""},{image:i(({record:a})=>[z("img",{width:"90px",height:"90px",style:{"object-fit":"scale-down"},src:a.thumb&&a.thumb.full?a.thumb.full:Y},null,8,Be)]),op:i(({record:a})=>[s(_e,null,{overlay:i(()=>[s(j,{onClick:r=>de(a,r)},{default:i(()=>[(d(!0),x(k,null,$(a.variants_all,r=>(d(),U(c,{key:r.id},{default:i(()=>[b(" افزودن تنوع "+w(r.title),1)]),_:2},1024))),128))]),_:2},1032,["onClick"])]),default:i(()=>[s(o,{style:{"margin-left":"8px"}},{default:i(()=>[e[13]||(e[13]=b(" افزودن ",-1)),s(R,{icon:"vuesax-linear:arrow-down",size:"16"})]),_:1})]),_:2},1024)]),_:1},8,["model"]),h.value.length>0?(d(),U(K,{key:0,title:"ثبت سفارش",class:"mt-5"},{default:i(()=>[s(fe,{columns:se,"data-source":h.value,bordered:"",pagination:!1,"row-key":"vid",size:V(v).isMobile?"small":"middle",scroll:V(v).isSmallScreen?{x:"max-content"}:void 0},{bodyCell:i(({column:a,record:r,index:B})=>[a.dataIndex==="delete"?(d(),U(R,{key:0,icon:"vuesax-linear:close-circle",size:"16",class:"cursor-pointer",onClick:q=>V(u).remove(r)},null,8,["onClick"])):a.dataIndex==="product"?(d(),x("div",Oe,[z("img",{src:ie(r.product),width:"50px"},null,8,Ve),b(" "+w(r.product.title),1)])):a.dataIndex==="wage"?(d(),x(k,{key:2},[b(w(I(r).percentage_pay)+"٪ ",1)],64)):a.dataIndex==="qty"?(d(),U(X,{key:3,value:h.value[B].qty,"onUpdate:value":q=>h.value[B].qty=q,min:1,max:le(B),onChange:q=>re(B,q)},null,8,["value","onUpdate:value","max","onChange"])):a.dataIndex==="weight"?(d(),x("div",$e,[!m.grams||m.id!==I(r).id?(d(),x(k,{key:0},[z("span",Le,w(I(r).title),1),s(R,{icon:"vuesax-linear:edit-2",size:"16",class:"cursor-pointer ml-2 text-primary",onClick:q=>pe(r)},null,8,["onClick"])],64)):(d(),x(k,{key:1},[s(X,{value:m.grams,"onUpdate:value":e[0]||(e[0]=q=>m.grams=q)},null,8,["value"]),s(R,{icon:"vuesax-linear:tick-circle",size:"16",class:"cursor-pointer ml-2 text-success",onClick:ce})],64))])):a.dataIndex==="total"?(d(),x(k,{key:5},[b(w(oe(r))+" گرم ",1)],64)):E("",!0)]),_:1},8,["data-source","size","scroll"]),s(ye,{layout:"vertical",class:"mt-4",onSubmit:Ce(W,["prevent"])},{default:i(()=>[z("div",Re,[s(f,{label:"مشتری","validate-status":_.customer_id?"error":"",help:_.customer_id},{default:i(()=>[s(Q,{value:n.customer_id,"onUpdate:value":e[1]||(e[1]=a=>n.customer_id=a),"show-search":"","option-filter-prop":"children","filter-option":me},{default:i(()=>[(d(!0),x(k,null,$(G.value,a=>(d(),U(M,{key:a.id,value:a.id},{default:i(()=>[b(w(`${a.id}-${a.fname} ${a.lname}`),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1},8,["validate-status","help"]),s(f,{label:"وضعیت تحویل","validate-status":_.sts?"error":"",help:_.sts},{default:i(()=>[s(Q,{value:n.sts,"onUpdate:value":e[2]||(e[2]=a=>n.sts=a)},{default:i(()=>[(d(),x(k,null,$(te,(a,r)=>s(M,{key:r,value:Number(r)},{default:i(()=>[b(w(a),1)]),_:2},1032,["value"])),64))]),_:1},8,["value"])]),_:1},8,["validate-status","help"]),s(f,{label:"نوع فروش","validate-status":_.type?"error":"",help:_.type},{default:i(()=>[s(Q,{value:n.type,"onUpdate:value":e[3]||(e[3]=a=>n.type=a)},{default:i(()=>[(d(!0),x(k,null,$(J.value,(a,r)=>(d(),U(M,{key:r,value:Number(r)},{default:i(()=>[b(w(a),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1},8,["validate-status","help"]),s(f,{label:"نام دریافت کننده"},{default:i(()=>[s(C,{value:n.shipping_address.reciver_fname,"onUpdate:value":e[4]||(e[4]=a=>n.shipping_address.reciver_fname=a)},null,8,["value"])]),_:1}),s(f,{label:"نام خانوادگی دریافت کننده"},{default:i(()=>[s(C,{value:n.shipping_address.reciver_lname,"onUpdate:value":e[5]||(e[5]=a=>n.shipping_address.reciver_lname=a)},null,8,["value"])]),_:1}),s(f,{label:"استان"},{default:i(()=>[s(C,{value:n.shipping_address.province,"onUpdate:value":e[6]||(e[6]=a=>n.shipping_address.province=a)},null,8,["value"])]),_:1}),s(f,{label:"شهر"},{default:i(()=>[s(C,{value:n.shipping_address.city,"onUpdate:value":e[7]||(e[7]=a=>n.shipping_address.city=a)},null,8,["value"])]),_:1}),s(f,{label:"کد پستی"},{default:i(()=>[s(C,{value:n.shipping_address.zipcode,"onUpdate:value":e[8]||(e[8]=a=>n.shipping_address.zipcode=a)},null,8,["value"])]),_:1}),s(f,{label:"تلفن همراه"},{default:i(()=>[s(C,{value:n.shipping_address.reciver_phone,"onUpdate:value":e[9]||(e[9]=a=>n.shipping_address.reciver_phone=a)},null,8,["value"])]),_:1}),s(f,{label:"تلفن ثابت"},{default:i(()=>[s(C,{value:n.shipping_address.reciver_fixed_phone,"onUpdate:value":e[10]||(e[10]=a=>n.shipping_address.reciver_fixed_phone=a)},null,8,["value"])]),_:1})]),s(f,{label:"توضیحات"},{default:i(()=>[s(D,{value:n.note,"onUpdate:value":e[11]||(e[11]=a=>n.note=a),"auto-size":{minRows:3,maxRows:5}},null,8,["value"])]),_:1}),s(f,{label:"آدرس"},{default:i(()=>[s(D,{value:n.shipping_address.address,"onUpdate:value":e[12]||(e[12]=a=>n.shipping_address.address=a),"auto-size":{minRows:3,maxRows:5}},null,8,["value"])]),_:1}),z("div",Te,[s(ge,{color:"blue"},{default:i(()=>[b("مجموع وزن: "+w(ne.value)+" گرم",1)]),_:1})]),s(o,{type:"primary",class:"mt-4 form-submit",disabled:!h.value||h.value.length<1,onClick:W},{default:i(()=>[...e[14]||(e[14]=[b(" ثبت تغییرات ",-1)])]),_:1},8,["disabled"])]),_:1})]),_:1})):E("",!0)]),_:1})]),_:1},8,["spinning"])):E("",!0)}}}),We=Ue(je,[["__scopeId","data-v-f1e15c39"]]);export{We as default};