2 lines
11 KiB
JavaScript
2 lines
11 KiB
JavaScript
import{j as e,an as A,B as F,T as B,al as iu,a_ as du,I as hu,b3 as Cu,b as X,a5 as E,au as K}from"./mui-vendor-D_SVL-Dx.js";import{r as c}from"./react-vendor-CmFgShSM.js";import{a as w,u as L,f as pu}from"./redux-vendor-CfkcHgWN.js";import{B as xu}from"./BackButton-Dr-K0JXJ.js";import{L as N,j as I,h as j,A as Y,u as fu,c as gu,a0 as V,C as Z,G as h,S as T,V as k,ad as yu,O as z,p as Au}from"./index-D80MdVQn.js";import{d as bu}from"./Block-Dtm3DVT1.js";import{d as Fu}from"./Tune-BBzxV8DK.js";import{R as ju}from"./ResponsiveTable-bUYl0qDM.js";import{R as vu}from"./index.esm-C1-dCPnj.js";import{c as R}from"./checkPathStartsWith-DedybDvj.js";import"./FilterAlt-DZsHj-WQ.js";import"./styled-components.browser.esm-gS9mh05b.js";const _u=w("SLAUGHTER_SUBMIT_REPRESENTATIVE_SERVICE",async(t,{dispatch:r})=>{var o,l,s;try{r(N());const{data:a,status:n}=await I.post("representative/",t);return r(j()),{data:a,status:n}}catch(a){return r(j()),{error:((l=(o=a.response)==null?void 0:o.data)==null?void 0:l.result)||((s=a.response)==null?void 0:s.data)||"خطا در ثبت نماینده"}}}),uu=w("SLAUGHTER_EDIT_REPRESENTATIVE_SERVICE",async(t,{dispatch:r})=>{var o,l,s;try{r(N());const{data:a,status:n}=await I.put("representative/0/",t);return r(j()),{data:a,status:n}}catch(a){return r(j()),{error:((l=(o=a.response)==null?void 0:o.data)==null?void 0:l.result)||((s=a.response)==null?void 0:s.data)||"خطا در ویرایش نماینده"}}}),Su=()=>gu({first_name:k().required("نام الزامی است"),last_name:k().required("نام خانوادگی الزامی است"),mobile:k().required("شماره همراه الزامی است").matches(/^09\d{9}$/,"شماره تلفن باید با 09 شروع شود و 11 رقم باشد"),city:k().required("شهر الزامی است")}),eu=({updateTable:t,item:r,isEdit:o})=>{const l=L(),[s]=c.useContext(Y),a=fu({initialValues:{first_name:(r==null?void 0:r.first_name)||(r==null?void 0:r.firstName)||"",last_name:(r==null?void 0:r.last_name)||(r==null?void 0:r.lastName)||"",mobile:(r==null?void 0:r.mobile)||"",city:(r==null?void 0:r.city)||""},enableReinitialize:!0,validationSchema:Su(),onSubmit:n=>{const C=o?{key:r==null?void 0:r.key,first_name:n.first_name,last_name:n.last_name,mobile:n.mobile,city:n.city}:{first_name:n.first_name,last_name:n.last_name,mobile:n.mobile,city:n.city,role:V()};l((o?uu:_u)(C)).then(d=>{d.payload.error?s({vertical:"top",horizontal:"center",msg:d.payload.error,severity:"error"}):(s({vertical:"top",horizontal:"center",msg:"عملیات با موفقیت انجام شد.",severity:"success"}),t&&t(),l(Z()))})}});return e.jsx("form",{onSubmit:a.handleSubmit,children:e.jsxs(h,{container:!0,gap:T.SMALL,p:2,children:[e.jsx(h,{item:!0,xs:12,children:e.jsx(A,{label:"نام",variant:"outlined",fullWidth:!0,id:"first_name",name:"first_name",value:a.values.first_name,onChange:a.handleChange,onBlur:a.handleBlur,error:a.touched.first_name&&!!a.errors.first_name,helperText:a.touched.first_name&&a.errors.first_name})}),e.jsx(h,{item:!0,xs:12,children:e.jsx(A,{label:"نام خانوادگی",variant:"outlined",fullWidth:!0,id:"last_name",name:"last_name",value:a.values.last_name,onChange:a.handleChange,onBlur:a.handleBlur,error:a.touched.last_name&&!!a.errors.last_name,helperText:a.touched.last_name&&a.errors.last_name})}),e.jsx(h,{item:!0,xs:12,children:e.jsx(A,{label:"شماره همراه",variant:"outlined",fullWidth:!0,id:"mobile",name:"mobile",value:a.values.mobile,onChange:a.handleChange,onBlur:a.handleBlur,error:a.touched.mobile&&!!a.errors.mobile,helperText:a.touched.mobile&&a.errors.mobile,inputProps:{maxLength:11}})}),e.jsx(h,{item:!0,xs:12,children:e.jsx(A,{label:"شهر",variant:"outlined",fullWidth:!0,id:"city",name:"city",value:a.values.city,onChange:a.handleChange,onBlur:a.handleBlur,error:a.touched.city&&!!a.errors.city,helperText:a.touched.city&&a.errors.city})}),e.jsx(h,{item:!0,xs:12,mt:2,children:e.jsx(F,{type:"submit",variant:"contained",color:"primary",fullWidth:!0,disabled:!a.isValid,children:o?"ویرایش":"ثبت"})})]})})},Eu=({item:t,updateTable:r})=>{const o=L(),[l]=c.useContext(Y),[s,a]=c.useState((t==null?void 0:t.limitation)||!1),[n,C]=c.useState((t==null?void 0:t.governmentalLimitationWeight)||0),[p,d]=c.useState((t==null?void 0:t.freeLimitationWeight)||0),b=x=>{x.preventDefault();const m={key:t==null?void 0:t.key,limitation:s,governmental_limitation_weight:s?Number(n):0,free_limitation_weight:s?Number(p):0};o(uu(m)).then(v=>{var _;(_=v.payload)!=null&&_.error?l({vertical:"top",horizontal:"center",msg:v.payload.error,severity:"error"}):(l({vertical:"top",horizontal:"center",msg:"عملیات با موفقیت انجام شد.",severity:"success"}),r&&r(),o(Z()))})};return e.jsx("form",{onSubmit:b,children:e.jsxs(h,{container:!0,gap:T.SMALL,p:2,children:[e.jsxs(h,{container:!0,item:!0,xs:12,alignItems:"center",gap:1,children:[e.jsx(B,{variant:"body2",color:"text.secondary",children:"اطلاعات نماینده:"}),e.jsxs(B,{variant:"h6",mb:.75,children:[t==null?void 0:t.firstName," ",t==null?void 0:t.lastName]})]}),e.jsx(h,{item:!0,xs:12,mb:1,children:e.jsx(iu,{control:e.jsx(du,{checked:s,onChange:x=>a(x.target.checked),color:"primary"}),label:"محدودیت فروش روزانه"})}),s&&e.jsxs(e.Fragment,{children:[e.jsx(h,{item:!0,xs:12,children:e.jsx(A,{label:"حداکثر فروش دولتی (کیلوگرم)",variant:"outlined",fullWidth:!0,type:"number",value:n,onChange:x=>C(x.target.value),inputProps:{min:0}})}),e.jsx(h,{item:!0,xs:12,children:e.jsx(A,{label:"حداکثر فروش آزاد (کیلوگرم)",variant:"outlined",fullWidth:!0,type:"number",value:p,onChange:x=>d(x.target.value),inputProps:{min:0}})})]}),e.jsx(h,{item:!0,xs:12,mt:2,children:e.jsx(F,{type:"submit",variant:"contained",color:"primary",fullWidth:!0,disabled:s&&n===0&&p===0,children:"ثبت"})})]})})},mu=({item:t,updateTable:r})=>{const[o,l]=c.useState(null),s=L(),a=d=>{l(d.currentTarget)},n=()=>{l(null)},C=!!o,p=C?"popover":void 0;return e.jsxs("div",{children:[e.jsx(hu,{"aria-describedby":p,variant:"contained",color:"primary",onClick:a,size:"small",children:e.jsx(Fu,{fontSize:"small"})}),e.jsx(Cu,{anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"left"},id:p,open:C,anchorEl:o,onClose:n,children:e.jsxs(X,{style:{padding:"10px",display:"flex",flexDirection:"column",gap:"8px"},children:[e.jsx(F,{color:"primary",size:"small",onClick:()=>{n(),s(z({title:"ویرایش نماینده",content:e.jsx(eu,{item:t,updateTable:r,isEdit:!0}),size:300}))},startIcon:e.jsx(yu,{fontSize:"small"}),sx:{textTransform:"none",userSelect:"text"},children:e.jsx(B,{variant:"body2",sx:{userSelect:"text"},children:"ویرایش"})}),e.jsx(F,{color:"primary",size:"small",onClick:()=>{n(),s(z({title:"تنظیم محدودیت فروش",content:e.jsx(Eu,{item:t,updateTable:r}),size:400}))},startIcon:e.jsx(bu,{fontSize:"small"}),sx:{textTransform:"none",userSelect:"text"},children:e.jsx(B,{variant:"body2",sx:{userSelect:"text"},children:"تنظیم محدودیت"})})]})})]})},Q=w("SLAUGHTER_GET_REPRESENTATIVE_INFO_SERVICE",async(t,{dispatch:r})=>{var o,l,s;try{r(N());const{data:a,status:n}=await I.get("representative/",{params:{role:V(),search:t.search||"filter",value:t.value||"",page:t.page||1,page_size:t.page_size||10,role_key:t.role_key||""}});return r(j()),{data:a,status:n}}catch(a){return r(j()),{error:((l=(o=a.response)==null?void 0:o.data)==null?void 0:l.result)||((s=a.response)==null?void 0:s.data)||"خطا در دریافت اطلاعات"}}}),Wu=()=>{const t=L(),[r,o]=c.useState([]),[l,s]=c.useState(0),[a,n]=c.useState(10),[C,p]=c.useState(""),[d,b]=c.useState(1),[x,m]=c.useState([]),v=c.useRef(!0),_=V()==="Steward",f=pu(i=>i.userSlice.selectedSubUser),au=i=>p(i.target.value),D=async i=>{var g,y;const u=await t(Q({search:"filter",value:C,page:i,page_size:a,role_key:(R("slaughter")||R("steward"))&&(f==null?void 0:f.key)||""}));if(u.payload.error)console.error("Error fetching data:",u.payload.error),o([]),s(0);else{o(((g=u.payload.data)==null?void 0:g.results)||[]);const S=Number((y=u.payload.data)==null?void 0:y.count)||0;s(S)}},ru=i=>{D(i),b(i)},tu=i=>{n(Number(i)),b(1)},P=()=>{D(d!==0?d:1)};c.useEffect(()=>{if(!r||!Array.isArray(r)){m([]);return}const i=r.map((u,g)=>{var G,O,H,$,q,J,U;const y=(u==null?void 0:u.trash)!==void 0?!u.trash:null,S=y===null?"-":e.jsx(K,{label:y?"فعال":"غیرفعال",color:y?"success":"error",size:"small",sx:{minWidth:80}}),M=u==null?void 0:u.limitation,nu=e.jsx(K,{label:M?"دارد":"ندارد",color:M?"warning":"default",size:"small",sx:{minWidth:60}}),ou=(G=u==null?void 0:u.killHouse)!=null&&G.name&&((O=u==null?void 0:u.killHouse)!=null&&O.mobile)?`${u.killHouse.name} (${u.killHouse.mobile})`:(H=u==null?void 0:u.killHouse)!=null&&H.name?u.killHouse.name:"-",lu=($=u==null?void 0:u.steward)!=null&&$.name&&((J=(q=u==null?void 0:u.steward)==null?void 0:q.user)!=null&&J.mobile)?`${u.steward.name} (${u.steward.user.mobile})`:(U=u==null?void 0:u.steward)!=null&&U.name?u.steward.name:"-",cu=_?lu:ou;return[d===1?g+1:g+a*(d-1)+1,u!=null&&u.createDate?Au(u.createDate):"-",(u==null?void 0:u.firstName)||"-",(u==null?void 0:u.lastName)||"-",(u==null?void 0:u.mobile)||"-",(u==null?void 0:u.city)||"-",cu,nu,(u==null?void 0:u.governmentalLimitationWeight)||0,(u==null?void 0:u.freeLimitationWeight)||0,S,e.jsx(mu,{item:u,updateTable:P},`operations-${(u==null?void 0:u.key)||g}`)]});m(i)},[r,d,a]),c.useEffect(()=>{D(1)},[f==null?void 0:f.key]),c.useEffect(()=>{if(v.current){v.current=!1;return}D(1),b(1)},[a]);const W=async i=>{var g,y;i.preventDefault(),b(1);const u=await t(Q({search:"filter",value:C,page:1,page_size:a,role_key:R("slaughter")&&(f==null?void 0:f.key)||""}));if(u.payload.error)console.error("Error fetching data:",u.payload.error),o([]),s(0);else{o(((g=u.payload.data)==null?void 0:g.results)||[]);const S=Number((y=u.payload.data)==null?void 0:y.count)||0;s(S)}},su=()=>{t(z({title:"ثبت نماینده جدید",content:e.jsx(eu,{updateTable:P}),size:300}))};return e.jsx(X,{display:"flex",justifyContent:"center",children:e.jsxs(E,{container:!0,xs:12,sm:12,md:10,lg:10,children:[e.jsx(E,{item:!0,xs:12,children:e.jsx(xu,{})}),e.jsxs(E,{container:!0,item:!0,gap:T.SMALL,children:[e.jsx(F,{variant:"contained",color:"primary",onClick:su,children:"ثبت نماینده جدید"}),e.jsx("form",{onSubmit:W,children:e.jsxs(E,{container:!0,alignItems:"center",gap:T.SMALL,children:[e.jsx(A,{size:"small",autoComplete:"off",label:"جستجو",variant:"outlined",style:{width:200},value:C,onChange:au}),e.jsx(F,{type:"submit",onClick:W,endIcon:e.jsx(vu,{}),children:"جستجو"})]})})]}),e.jsx(E,{item:!0,xs:12,mt:2,children:e.jsx(ju,{title:"نمایندگان",columns:["ردیف","تاریخ ایجاد","نام","نام خانوادگی","شماره همراه","شهر",_?"مباشر":"کشتارگاه","محدودیت فروش","حداکثر فروش دولتی","حداکثر فروش آزاد","وضعیت","عملیات"],customWidth:"100%",data:x,handlePageChange:ru,totalRows:l,page:d,perPage:a,handlePerRowsChange:tu})})]})})};export{Wu as default};
|