hesabixCore/public_html/webui/assets/card-904872a5.js

2 lines
14 KiB
JavaScript

import{_ as K,a as v,S as T}from"./main-9b36f05f.js";import{r as Q,a as c,o as m,s as k,b as e,w as s,F as B,d as r,t as n,_ as L,c as N,C as W,e as i,af as X,ag as Y,v as z,A as I}from"./vendor-adef9cb4.js";const Z={name:"card",data(){return{searchValue:"",listPersons:[],itemsSelected:[],selectedPerson:{accounts:[],balance:0,bs:0,bd:0},items:[],loading:Q(!1),dialog:!1,debounceTimeout:null,headers:[{title:this.$t("dialog.operation"),key:"operation",align:"center",sortable:!1},{title:this.$t("dialog.type"),key:"type",align:"center",sortable:!0},{title:this.$t("dialog.invoice_num"),key:"code",align:"center",sortable:!0},{title:this.$t("dialog.date"),key:"date",align:"center",sortable:!0},{title:this.$t("app.body"),key:"des",align:"center"},{title:this.$t("pages.person_card.detail"),key:"ref",align:"center",sortable:!0},{title:this.$t("pages.person_card.debit"),key:"bd",align:"center",sortable:!0},{title:this.$t("pages.person_card.credit"),key:"bs",align:"center",sortable:!0}]}},mounted(){this.loadData()},methods:{debouncedSearchPerson(t){this.debounceTimeout&&clearTimeout(this.debounceTimeout),this.debounceTimeout=setTimeout(()=>{this.searchPerson(t)},1e3)},async searchPerson(t){if(!t||t.length<1){this.listPersons=[];return}this.loading=!0;try{const o=await v.post("/api/person/list/search",{search:t});this.listPersons=o.data}catch(o){console.error("Search error:",o),this.listPersons=[]}finally{this.loading=!1}},updateRoute(){this.selectedPerson&&this.selectedPerson.code&&(this.$router.push(this.selectedPerson.code),this.loadPerson(this.selectedPerson.code))},async loadData(){this.loading=!0;try{const t=await v.post("/api/person/list/search");this.listPersons=t.data;const o=this.$route.params.id;o?await this.loadPerson(o):t.data.length>0&&(this.selectedPerson=t.data[0],await this.loadPerson(this.selectedPerson.code))}catch(t){console.error("Load data error:",t)}finally{this.loading=!1}},async loadPerson(t){this.loading=!0;try{const o=await v.post("/api/person/info/"+t);this.selectedPerson=o.data;const h=await v.post("/api/accounting/rows/search",{type:"person",id:t});this.items=h.data}catch(o){console.error("Load person error:",o),this.selectedPerson={accounts:[],balance:0,bs:0,bd:0},this.items=[]}finally{this.loading=!1}},async excellOutput(t=!0){if(!t&&this.itemsSelected.length===0){T.fire({text:this.$t("pages.person_card.no_items_selected"),icon:"info",confirmButtonText:this.$t("dialog.confirm")});return}try{const o=await v({method:"post",url:"/api/person/card/list/excel",data:t?{code:this.selectedPerson.code}:{code:this.selectedPerson.code,items:this.itemsSelected},responseType:"arraybuffer"}),h=window.URL.createObjectURL(new Blob([o.data])),f=document.createElement("a");f.href=h,f.setAttribute("download","person-card-view.xlsx"),document.body.appendChild(f),f.click(),document.body.removeChild(f)}catch(o){console.error("Excel output error:",o)}},async print(t=!0){if(!this.selectedPerson){T.fire({text:this.$t("pages.person_card.no_items_selected"),icon:"info",confirmButtonText:this.$t("dialog.confirm")});return}if(!t&&this.itemsSelected.length===0){T.fire({text:this.$t("pages.person_card.no_items_selected"),icon:"info",confirmButtonText:this.$t("dialog.confirm")});return}try{const o=await v.post("/api/person/card/list/print",t?{code:this.selectedPerson.code}:{code:this.selectedPerson.code,items:this.itemsSelected});window.open(this.$API_URL+"/front/print/"+o.data.id,"_blank","noreferrer")}catch(o){console.error("Print error:",o)}},getTypeRoute(t,o){return{sell:"/acc/sell/view/",buy:"/acc/buy/view/",rfbuy:"/acc/rfbuy/view/",rfsell:"/acc/rfsell/view/",person_send:"/acc/accounting/view/",person_receive:"/acc/accounting/view/",cost:"/acc/accounting/view/",income:"/acc/accounting/view/",sell_receive:"/acc/accounting/view/",buy_send:"/acc/accounting/view/"}[t]+o},getTypeLabel(t){return{sell:this.$t("pages.person_card.sell_invoice"),buy:this.$t("pages.person_card.buy_invoice"),rfbuy:this.$t("pages.person_card.return_buy"),rfsell:this.$t("pages.person_card.return_sell"),person_send:this.$t("pages.person_card.payment"),person_receive:this.$t("pages.person_card.receipt"),cost:this.$t("pages.person_card.cost"),income:this.$t("pages.person_card.income"),sell_receive:this.$t("pages.person_card.sell_receive"),buy_send:this.$t("pages.person_card.buy_send")}[t]||t}}},ee={class:"bg-primary-dark text-white pa-1 rounded d-block"},te={key:0,class:"text-info-light"},se={class:"text-subtitle-2"},oe={class:"text-primary"},ne={class:"text-subtitle-2"},ae={class:"text-primary"},le={class:"text-subtitle-2"},re={class:"text-primary"},ie={class:"text-subtitle-2"},ce={class:"text-primary"},de={class:"text-subtitle-2"},pe={class:"text-primary"},ue={class:"text-subtitle-2"},_e={class:"text-primary"},me={class:"text-subtitle-2"},fe={class:"text-primary"},ge={key:0,class:"text-info-light"},be={class:"text-subtitle-2"},ve={class:"text-subtitle-2"},he={class:"text-primary"},ye={class:"text-subtitle-2"},Pe={class:"text-primary"},ke={class:"text-subtitle-2"},we={class:"text-primary"};function xe(t,o,h,f,a,p){const d=c("v-icon"),u=c("v-btn"),y=c("v-toolbar-title"),w=c("v-spacer"),S=c("v-tooltip"),R=c("v-list-subheader"),g=c("v-list-item"),x=c("v-list"),U=c("v-menu"),P=c("v-toolbar"),O=c("v-alert"),$=c("v-card-text"),j=c("v-card-actions"),V=c("v-card"),A=c("v-dialog"),D=c("v-list-item-title"),b=c("v-col"),C=c("v-row"),E=c("v-list-item-subtitle"),F=c("v-autocomplete"),M=c("v-text-field"),q=c("v-data-table"),G=c("v-container"),H=c("v-progress-circular"),J=c("v-overlay");return m(),k(B,null,[e(P,{color:"toolbar",dense:"",flat:""},{default:s(()=>[e(u,{icon:"",onClick:o[0]||(o[0]=l=>t.$router.back()),class:"d-none d-md-flex"},{default:s(()=>[e(d,null,{default:s(()=>o[12]||(o[12]=[r("mdi-arrow-right")])),_:1})]),_:1}),e(y,{class:"text-primary-dark"},{default:s(()=>[r(n(t.$t("pages.person_card.title")),1)]),_:1}),e(w),e(u,{color:"primary",size:"small",onClick:o[1]||(o[1]=l=>a.dialog=!0),loading:a.loading,"prepend-icon":"mdi-bank"},{default:s(()=>[r(n(t.$t("dialog.banks_accounts")),1)]),_:1},8,["loading"]),e(U,null,{activator:s(({props:l})=>[e(u,L(l,{icon:"",color:"red"}),{default:s(()=>[e(S,{activator:"parent",text:t.$t("dialog.export_pdf"),location:"bottom"},null,8,["text"]),e(d,{icon:"mdi-file-pdf-box"})]),_:2},1040)]),default:s(()=>[e(x,null,{default:s(()=>[e(R,{color:"primary"},{default:s(()=>[r(n(t.$t("dialog.export_pdf")),1)]),_:1}),e(g,{class:"text-dark",title:t.$t("dialog.selected"),onClick:o[2]||(o[2]=l=>p.print(!1))},{prepend:s(()=>[e(d,{color:"green-darken-4",icon:"mdi-check"})]),_:1},8,["title"]),e(g,{class:"text-dark",title:t.$t("dialog.selected_all"),onClick:o[3]||(o[3]=l=>p.print(!0))},{prepend:s(()=>[e(d,{color:"indigo-darken-4",icon:"mdi-expand-all"})]),_:1},8,["title"])]),_:1})]),_:1}),e(U,null,{activator:s(({props:l})=>[e(u,L(l,{icon:"",color:"green"}),{default:s(()=>[e(S,{activator:"parent",text:t.$t("dialog.export_excel"),location:"bottom"},null,8,["text"]),e(d,{icon:"mdi-file-excel-box"})]),_:2},1040)]),default:s(()=>[e(x,null,{default:s(()=>[e(R,{color:"primary"},{default:s(()=>[r(n(t.$t("dialog.export_excel")),1)]),_:1}),e(g,{class:"text-dark",title:t.$t("dialog.selected"),onClick:o[4]||(o[4]=l=>p.excellOutput(!1))},{prepend:s(()=>[e(d,{color:"green-darken-4",icon:"mdi-check"})]),_:1},8,["title"]),e(g,{class:"text-dark",title:t.$t("dialog.selected_all"),onClick:o[5]||(o[5]=l=>p.excellOutput(!0))},{prepend:s(()=>[e(d,{color:"indigo-darken-4",icon:"mdi-expand-all"})]),_:1},8,["title"])]),_:1})]),_:1})]),_:1}),e(A,{modelValue:a.dialog,"onUpdate:modelValue":o[8]||(o[8]=l=>a.dialog=l),"max-width":"500",persistent:""},{default:s(()=>[e(V,null,{default:s(()=>[e(P,{color:"primary-dark",dense:"",flat:""},{default:s(()=>[e(y,{class:"text-white"},{default:s(()=>[r(n(t.$t("dialog.banks_accounts")),1)]),_:1}),e(w),e(u,{icon:"",onClick:o[6]||(o[6]=l=>a.dialog=!1)},{default:s(()=>[e(d,null,{default:s(()=>o[13]||(o[13]=[r("mdi-close")])),_:1})]),_:1})]),_:1}),e($,{class:"pa-2"},{default:s(()=>[a.selectedPerson.accounts&&a.selectedPerson.accounts.length>0?(m(),N(x,{key:0,dense:""},{default:s(()=>[(m(!0),k(B,null,W(a.selectedPerson.accounts,l=>(m(),N(g,{key:l.accountNum,class:"pa-1"},{title:s(()=>[i("span",ee,n(l.bank)+": "+n(l.accountNum),1)]),subtitle:s(()=>[i("div",null,n(t.$t("pages.person.card_number"))+": "+n(l.cardNum),1),i("div",null,n(t.$t("pages.person.shaba_number"))+": "+n(l.shabaNum),1)]),_:2},1024))),128))]),_:1})):(m(),N(O,{key:1,type:"error",dense:"",text:"",class:"ma-0"},{default:s(()=>[r(n(t.$t("pages.person_card.no_bank_accounts")),1)]),_:1}))]),_:1}),e(j,null,{default:s(()=>[e(u,{color:"secondary",text:"",onClick:o[7]||(o[7]=l=>a.dialog=!1)},{default:s(()=>[r(n(t.$t("dialog.cancel")),1)]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue"]),e(G,{fluid:"",class:"pa-2"},{default:s(()=>[e(C,{dense:""},{default:s(()=>[e(b,{cols:"12",md:"12"},{default:s(()=>[e(F,{modelValue:a.selectedPerson,"onUpdate:modelValue":[o[9]||(o[9]=l=>a.selectedPerson=l),p.updateRoute],items:a.listPersons,"item-title":"nikename","item-value":"code","return-object":"",label:t.$t("dialog.user_info"),dense:"","hide-details":"","prepend-inner-icon":"mdi-account",loading:a.loading,"onUpdate:search":p.debouncedSearchPerson},{"no-data":s(()=>[r(n(t.$t("pages.person_card.no_results")),1)]),item:s(({props:l,item:_})=>[e(g,X(Y(l)),{default:s(()=>[e(D,null,{default:s(()=>[e(d,{small:"",left:""},{default:s(()=>o[14]||(o[14]=[r("mdi-account")])),_:1}),r(" "+n(_.raw.nikename),1)]),_:2},1024),e(E,null,{default:s(()=>[e(C,{dense:""},{default:s(()=>[e(b,{cols:"6"},{default:s(()=>[e(d,{small:"",left:""},{default:s(()=>o[15]||(o[15]=[r("mdi-phone")])),_:1}),r(" "+n(_.raw.mobile),1)]),_:2},1024),e(b,{cols:"6"},{default:s(()=>[e(d,{small:"",left:""},{default:s(()=>o[16]||(o[16]=[r("mdi-scale-balance")])),_:1}),r(" "+n(t.$t("pages.person_card.balance"))+": "+n(t.$filters.formatNumber(Math.abs(parseInt(_.raw.bs)-parseInt(_.raw.bd))))+" ",1),i("span",{class:z(parseInt(_.raw.bs)-parseInt(_.raw.bd)<0?"text-danger":"text-success")},n(parseInt(_.raw.bs)-parseInt(_.raw.bd)<0?t.$t("pages.person_card.debtor"):t.$t("pages.person_card.creditor")),3)]),_:2},1024)]),_:2},1024)]),_:2},1024)]),_:2},1040)]),_:1},8,["modelValue","items","label","loading","onUpdate:search","onUpdate:modelValue"])]),_:1}),e(b,{cols:"12",md:"6"},{default:s(()=>[e(V,{flat:"",outlined:""},{default:s(()=>[e(P,{color:"primary-dark",dense:"",flat:""},{default:s(()=>[e(y,{class:"text-white"},{default:s(()=>[r(n(t.$t("pages.person_card.account_card"))+" ",1),a.selectedPerson?(m(),k("small",te,n(a.selectedPerson.nikename),1)):I("",!0)]),_:1})]),_:1}),e($,{class:"pa-2"},{default:s(()=>[i("div",se,[r(n(t.$t("pages.person_card.accounting_code"))+": ",1),i("span",oe,n(a.selectedPerson.code||"-"),1)]),i("div",ne,[r(n(t.$t("pages.person.nickname"))+": ",1),i("span",ae,n(a.selectedPerson.nikename||"-"),1)]),i("div",le,[r(n(t.$t("pages.person.name"))+": ",1),i("span",re,n(a.selectedPerson.name||"-"),1)]),i("div",ie,[r(n(t.$t("pages.person.phone"))+": ",1),i("span",ce,n(a.selectedPerson.tel||"-"),1)]),i("div",de,[r(n(t.$t("pages.person.mobile"))+": ",1),i("span",pe,n(a.selectedPerson.mobile||"-"),1)]),i("div",ue,[r(n(t.$t("pages.person.address"))+": ",1),i("span",_e,n(a.selectedPerson.address||"-"),1)]),i("div",me,[r(n(t.$t("pages.person.description"))+": ",1),i("span",fe,n(a.selectedPerson.des||"-"),1)])]),_:1})]),_:1})]),_:1}),e(b,{cols:"12",md:"6"},{default:s(()=>[e(V,{flat:"",outlined:""},{default:s(()=>[e(P,{color:"primary-dark",dense:"",flat:""},{default:s(()=>[e(y,{class:"text-white"},{default:s(()=>[r(n(t.$t("pages.person_card.account_status"))+" ",1),a.selectedPerson?(m(),k("small",ge,n(a.selectedPerson.nikename),1)):I("",!0)]),_:1})]),_:1}),e($,{class:"pa-2"},{default:s(()=>[i("div",be,[r(n(t.$t("pages.person_card.accounting_status"))+": ",1),i("span",{class:z({"text-success":a.selectedPerson.balance>0,"text-danger":a.selectedPerson.balance<0,"text-dark":a.selectedPerson.balance==0})},n(a.selectedPerson.balance>0?t.$t("pages.person_card.creditor"):a.selectedPerson.balance<0?t.$t("pages.person_card.debtor"):t.$t("pages.person_card.settled")),3)]),i("div",ve,[r(n(t.$t("pages.person_card.credit"))+": ",1),i("span",he,n(t.$filters.formatNumber(a.selectedPerson.bs)||"-"),1)]),i("div",ye,[r(n(t.$t("pages.person_card.debit"))+": ",1),i("span",Pe,n(t.$filters.formatNumber(a.selectedPerson.bd)||"-"),1)]),i("div",ke,[r(n(t.$t("pages.person_card.accounting_balance"))+": ",1),i("span",we,n(t.$filters.formatNumber(a.selectedPerson.balance)||"-"),1)])]),_:1})]),_:1})]),_:1})]),_:1}),e(C,{dense:""},{default:s(()=>[e(b,{cols:"12"},{default:s(()=>[e(q,{modelValue:a.itemsSelected,"onUpdate:modelValue":o[11]||(o[11]=l=>a.itemsSelected=l),headers:a.headers,items:a.items,search:a.searchValue,loading:a.loading,"show-select":"",dense:"","items-per-page":25,class:"elevation-1"},{top:s(()=>[e(P,{flat:"",dense:"",color:"grey-lighten-4"},{default:s(()=>[e(y,{class:"text-subtitle-1"},{default:s(()=>[r(n(t.$t("pages.person_card.transactions")),1)]),_:1}),e(w),e(M,{modelValue:a.searchValue,"onUpdate:modelValue":o[10]||(o[10]=l=>a.searchValue=l),dense:"","hide-details":"","prepend-inner-icon":"mdi-magnify"},null,8,["modelValue"])]),_:1})]),"item.operation":s(({item:l})=>[e(u,{variant:"plain",icon:"",size:"small",to:"/acc/accounting/view/"+l.code,color:"success"},{default:s(()=>[e(d,{small:""},{default:s(()=>o[17]||(o[17]=[r("mdi-eye")])),_:1})]),_:2},1032,["to"])]),"item.code":s(({item:l})=>[r(n(t.$filters.formatNumber(l.code)),1)]),"item.type":s(({item:l})=>[e(u,{variant:"plain",text:"",size:"small",to:p.getTypeRoute(l.type,l.code),class:"text-none"},{default:s(()=>[r(n(p.getTypeLabel(l.type)),1)]),_:2},1032,["to"])]),"no-data":s(()=>[r(n(t.$t("pages.person_card.no_data")),1)]),_:1},8,["modelValue","headers","items","search","loading"])]),_:1})]),_:1})]),_:1}),e(J,{value:a.loading,contained:"",class:"align-center justify-center"},{default:s(()=>[e(H,{indeterminate:"",size:"64"})]),_:1},8,["value"])],64)}const Ce=K(Z,[["render",xe],["__scopeId","data-v-0055093d"]]);export{Ce as default};