Files
tehran_taj/apps/admin-panel/dist/assets/create-BsAH3uiv.js
T
2026-10-13 10:31:21 +03:30

2 lines
11 KiB
JavaScript

import{J as he,x as P,d as be,q as xe,u as ke,v as we,a as S,w as i,i as Q,l as V,r as p,o as d,c as s,h as I,f as b,K as Ie,b as x,e as $,F as C,n as z,L as Ce,t as k,E as qe,N as Ue,A as Se,y as j,p as F,z as B,k as Ne,_ as Oe}from"./index-DUvp9JUu.js";import{X as ze}from"./model-urRbYsU4.js";import{b as Pe}from"./productListModel-DhfDMSio.js";import{u as Le}from"./auth-lJpgc6cR.js";import"./filters-CemNX7fr.js";import"./index-CfKZ-GjQ.js";import"./SettingOutlined-NyLvjC-i.js";const G="admin_cart_items",Ve=he("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(G,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(G)??"[]")||[],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 N of l){const u=v.find(E=>E.id==N.product.id);u&&(!u.variants_all[0].is_pre_order&&u.variants_all[0].qty===0||y.push({vid:N.vid,pid:u.id,product:u,qty:N.qty,promotion_id:u.promotion&&u.promotion.id?u.promotion.id:null}))}this.setItems(y)}}catch(l){console.log("error in cart",l)}}}}),$e=["src"],Be={key:1,class:"flex items-center"},Ee=["src"],Re={key:4,class:"flex"},Te={style:{width:"max-content"}},Me={class:"grid-5"},Qe={class:"totals"},H="/img/no-items.png",je=be({__name:"create",setup(l){const g=Ne(),v=xe(),y=ke(),N=Le(),u=Ve(),E=t=>!!y.hasPermission(t),Y=Pe(),Z=V(null),O=V(!1),J=V([]),A=V({}),ee={1:"ثبت سفارش",2:"تایید مدیر سیستم",3:"در حال تامین",4:"در حال آماده سازی",5:"ارسال",6:"تحویل مشتری"},n=j({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:""}}),_=j({}),te=F(()=>{var t;return(t=N.user)==null?void 0:t.id}),h=F(()=>u.items),ae=[{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"}],c=j({});function w(t){return t.product.variants_all.find(e=>e.id===t.vid)??{}}function se(t){var e,o,m;return((e=t==null?void 0:t.thumb)==null?void 0:e.full)??((m=(o=t==null?void 0:t.ProductImage)==null?void 0:o[0])==null?void 0:m.image)??H}const ie=F(()=>{let t=0;for(const e of h.value)t+=Number(w(e).grams??0);return t});function ne(t){return Number(w(t).grams??0)*t.qty}function oe(t){const e=h.value[t];if(!e)return 1/0;const o=Number(w(e).qty??0);return o>0?o:1/0}function le(t,e){u.updateItemQuantity({index:t,quantity:Number(e)})}function re(t,e){de(t,String(e.key))}function de(t,e){u.add({vid:e,pid:t.id,product:t,qty:1,promotion_id:t.promotion&&t.promotion.id?t.promotion.id:null}),B.info("اضافه شد")}function ue(t){const e=w(t);c.id=e.id,c.grams=Number(e.grams??0)}async function pe(){var t,e;if(!(!c.id||!c.grams))try{O.value=!0;const o=h.value.find(m=>m.vid===c.id);await P.post("add/variant",{product_id:o==null?void 0:o.pid,title:`${c.grams} گرم`,grams:c.grams}),await u.init(),c.id=void 0,c.grams=void 0}catch(o){B.error(((e=(t=o==null?void 0:o.response)==null?void 0:t.data)==null?void 0:e.message)??"خطا در ثبت وزن")}finally{O.value=!1}}function me(t,e){var o,m;return String(((m=(o=e==null?void 0:e.children)==null?void 0:o[0])==null?void 0:m.children)??"").toLowerCase().includes(t.toLowerCase())}function ce(){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 D(){var t,e;if(ce())try{O.value=!0;const o=h.value.map(m=>{const R=w(m);return{vid:m.vid,qty:m.qty,percent:R.percentage_pay,promotion_id:m.promotion_id}});await P.post("order",{...n,reagent_id:te.value,app:"app",order_items:o}),B.info("عملیات با موفقیت انجام شد"),u.clear(),g.push("/order/list")}catch(o){console.log(o),B.error(((e=(t=o==null?void 0:o.response)==null?void 0:t.data)==null?void 0:e.message)??"خطا در ثبت اطلاعات.")}finally{O.value=!1}}return we(async()=>{try{const[t,e]=await Promise.all([P.get("order/type"),P.post("single-customer",{page:1,limit:500})]);A.value=t.data,J.value=e.data.rows??[]}catch(t){console.log(t)}await u.init()}),(t,e)=>{const o=p("a-button"),m=p("a-menu-item"),R=p("a-menu"),ve=p("a-dropdown"),K=p("a-input-number"),_e=p("a-table"),T=p("a-select-option"),M=p("a-select"),f=p("a-form-item"),q=p("a-input"),W=p("a-textarea"),fe=p("a-tag"),ge=p("a-form"),X=p("a-card"),ye=p("a-spin");return E("order.create")?(d(),S(ye,{key:0,spinning:O.value},{default:i(()=>[s(X,{title:"لیست محصولات",class:"page-card"},{default:i(()=>[s(ze,{ref_key:"tblProducts",ref:Z,model:I(Y),"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:H},null,8,$e)]),op:i(({record:a})=>[s(ve,null,{overlay:i(()=>[s(R,{onClick:r=>re(a,r)},{default:i(()=>[(d(!0),x(C,null,$(a.variants_all,r=>(d(),S(m,{key:r.id},{default:i(()=>[b(" افزودن تنوع "+k(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(I(Ie))]),_:1})]),_:2},1024)]),_:1},8,["model"]),h.value.length>0?(d(),S(X,{key:0,title:"ثبت سفارش",class:"mt-5"},{default:i(()=>[s(_e,{columns:ae,"data-source":h.value,bordered:"",pagination:!1,"row-key":"vid",size:I(v).isMobile?"small":"middle",scroll:I(v).isSmallScreen?{x:"max-content"}:void 0},{bodyCell:i(({column:a,record:r,index:L})=>[a.dataIndex==="delete"?(d(),S(I(Ce),{key:0,class:"cursor-pointer",onClick:U=>I(u).remove(r)},null,8,["onClick"])):a.dataIndex==="product"?(d(),x("div",Be,[z("img",{src:se(r.product),width:"50px"},null,8,Ee),b(" "+k(r.product.title),1)])):a.dataIndex==="wage"?(d(),x(C,{key:2},[b(k(w(r).percentage_pay)+"٪ ",1)],64)):a.dataIndex==="qty"?(d(),S(K,{key:3,value:h.value[L].qty,"onUpdate:value":U=>h.value[L].qty=U,min:1,max:oe(L),onChange:U=>le(L,U)},null,8,["value","onUpdate:value","max","onChange"])):a.dataIndex==="weight"?(d(),x("div",Re,[!c.grams||c.id!==w(r).id?(d(),x(C,{key:0},[z("span",Te,k(w(r).title),1),s(I(qe),{class:"cursor-pointer ml-2 text-primary",onClick:U=>ue(r)},null,8,["onClick"])],64)):(d(),x(C,{key:1},[s(K,{value:c.grams,"onUpdate:value":e[0]||(e[0]=U=>c.grams=U)},null,8,["value"]),s(I(Ue),{class:"cursor-pointer ml-2 text-success",onClick:pe})],64))])):a.dataIndex==="total"?(d(),x(C,{key:5},[b(k(ne(r))+" گرم ",1)],64)):Q("",!0)]),_:1},8,["data-source","size","scroll"]),s(ge,{layout:"vertical",class:"mt-4",onSubmit:Se(D,["prevent"])},{default:i(()=>[z("div",Me,[s(f,{label:"مشتری","validate-status":_.customer_id?"error":"",help:_.customer_id},{default:i(()=>[s(M,{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(C,null,$(J.value,a=>(d(),S(T,{key:a.id,value:a.id},{default:i(()=>[b(k(`${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(M,{value:n.sts,"onUpdate:value":e[2]||(e[2]=a=>n.sts=a)},{default:i(()=>[(d(),x(C,null,$(ee,(a,r)=>s(T,{key:r,value:Number(r)},{default:i(()=>[b(k(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(M,{value:n.type,"onUpdate:value":e[3]||(e[3]=a=>n.type=a)},{default:i(()=>[(d(!0),x(C,null,$(A.value,(a,r)=>(d(),S(T,{key:r,value:Number(r)},{default:i(()=>[b(k(a),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1},8,["validate-status","help"]),s(f,{label:"نام دریافت کننده"},{default:i(()=>[s(q,{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(q,{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(q,{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(q,{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(q,{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(q,{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(q,{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(W,{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(W,{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",Qe,[s(fe,{color:"blue"},{default:i(()=>[b("مجموع وزن: "+k(ie.value)+" گرم",1)]),_:1})]),s(o,{type:"primary",class:"mt-4 form-submit",disabled:!h.value||h.value.length<1,onClick:D},{default:i(()=>[...e[14]||(e[14]=[b(" ثبت تغییرات ",-1)])]),_:1},8,["disabled"])]),_:1})]),_:1})):Q("",!0)]),_:1})]),_:1},8,["spinning"])):Q("",!0)}}}),Ge=Oe(je,[["__scopeId","data-v-6aceebec"]]);export{Ge as default};