File manager - Edit - /home/autoph/public_html/projects/ahg-hr/assets/index.65e8e3e5.js
Back
import{w as k,L as E}from"./index.e90b797d.js";import{B}from"./index.1e572db2.js";import{s as I,a as L,b as A}from"./data.a5ee1e0a.js";import{C as O}from"./index.609bcb7c.js";import{e as g}from"./employee-data.01b78c5e.js";import{_ as G,c as C,w as x,r as b,o as i,d as a,b as d,m,h as N,e as y,t as c,F as h,p as v,v as D,j as w}from"./index.3a33b88d.js";import"./index.a5110576.js";import"./logo-black.7c15feb3.js";import"./logo-white.b04c5a89.js";import"./transition.bee8c07d.js";/* empty css */import"./vue-cleave.min.88d00a75.js";import"./es.string.replace.f897d4b0.js";const R={mixins:[k],components:{Layout:E,Card:O,Button:B},data(){return{employeeData:g,index:null,activeStatus:null,employees:[],state:{chartType1:"bar",showTable1:!1,chartType2:"bar",showTable2:!1},statistics:[{name:I,title:"New Hires",count:"25",bg:"bg-cyan-400 dark:bg-slate-900 ",chart:!0},{name:L,title:"New Regularization",count:"28",bg:"bg-success-400 dark:bg-slate-900 ",chart:!0},{name:A,title:"New Promotion",count:"18",bg:"bg-purple-300 dark:bg-slate-900 ",chart:!0},{name:A,title:"New Clearance",count:"28",bg:"bg-rose-400 dark:bg-slate-900",chart:!0}],series:[],chartOptions:{chart:{type:"bar"},plotOptions:{bar:{horizontal:!1,columnWidth:"55%",endingShape:"rounded"}},dataLabels:{enabled:!1},stroke:{show:!0,width:2,colors:["transparent"]},xaxis:{categories:[]},yaxis:{title:{text:"Number of Employees"}},fill:{opacity:1},tooltip:{y:{formatter:function(r){return r+" employees"}}}},selectedChartType:"gender",selectedCompany:"",companies:["ABC Corporation","XYZ Inc.","Global Solutions","Tech Innovations"],selectedCompany2:"",chartOptions2:{chart:{type:"bar"},xaxis:{categories:[]},title:{text:"Employee Hires and Resignations per Month (2024)",align:"center"}},series2:[]}},computed:{computeGenderTableData(){const r=Array.from({length:38},()=>0),e=Array.from({length:38},()=>0);return this.employees.forEach(o=>{const s=o.Age-23;o.Gender==="Male"?r[s]++:e[s]++}),r.map((o,s)=>({age:s+23,male:r[s],female:e[s]}))},computeCompanyTableData(){const r=this.companies,e=Array.from({length:38},()=>Array(r.length).fill(0));return this.employees.forEach(o=>{if(this.selectedCompany&&o.Company!==this.selectedCompany)return;const s=o.Age-23,t=r.indexOf(o.Company);t!==-1&&e[s][t]++}),e.map((o,s)=>{const t={age:s+23};return r.forEach((l,u)=>{t[l]=o[u]}),t})},chartData2(){const r=this.selectedCompany?g.employees.filter(s=>s.company===this.selectedCompany):g.employees,o=["January","February","March","April","May"].map(s=>({month:s,hired:0,resigned:0}));return r.forEach(s=>{const t=new Date(s.date).getMonth();s.action==="Hired"?o[t].hired++:s.action==="Resigned"&&o[t].resigned++}),o}},created(){this.generateEmployees(),this.updateChartData(),this.updateChartData2()},methods:{switchChart2(r){r=="table"?this.state.showTable2=!0:(this.state.showTable2=!1,this.chartOptions2.chart.type=r,this.state.chartType2=r)},generateEmployees(){const r=["John Doe","Jane Smith","Michael Brown","Emily Davis","Sarah Wilson","David Johnson","Linda Garcia","James Miller","Robert Martinez","Patricia Lee","Charles White","Maria Harris","Thomas Clark","Barbara Lewis","Christopher Walker","Jessica Young","Daniel Hall","Karen Allen","Kevin King","Laura Scott"],e=this.companies,o=["Admin","Sales","Marketing","Human Resource","MIS","Legal","Operations"],s=["Male","Female"];for(let t=1;t<=500;t++){const l={EmployeeID:t,Name:r[Math.floor(Math.random()*r.length)],Age:Math.floor(Math.random()*38)+23,Gender:s[Math.floor(Math.random()*s.length)],Company:e[Math.floor(Math.random()*e.length)],Department:o[Math.floor(Math.random()*o.length)]};this.employees.push(l)}},updateChartData(){this.selectedChartType==="gender"?this.generateChartDataByGender():this.generateChartDataByCompany()},generateChartDataByGender(){const r=Array.from({length:38},(s,t)=>t+23),e=Array(38).fill(0),o=Array(38).fill(0);this.employees.forEach(s=>{const t=s.Age-23;s.Gender==="Male"?e[t]++:o[t]++}),this.series=[{name:"Male",data:e},{name:"Female",data:o}],this.chartOptions.xaxis.categories=r},generateChartDataByCompany(){const r=Array.from({length:38},(s,t)=>t+23),e=this.companies,o=e.map(()=>Array(38).fill(0));this.employees.forEach(s=>{if(this.selectedCompany&&s.Company!==this.selectedCompany)return;const t=s.Age-23,l=e.indexOf(s.Company);l!==-1&&o[l][t]++}),this.series=e.map((s,t)=>({name:s,data:o[t]})),this.chartOptions.xaxis.categories=r},computeGenderTableData(){const r=Array.from({length:38},()=>0),e=Array.from({length:38},()=>0);return this.employees.forEach(o=>{const s=o.Age-23;o.Gender==="Male"?r[s]++:e[s]++}),r.map((o,s)=>({age:s+23,male:r[s],female:e[s]}))},computeCompanyTableData(){const r=this.companies,e=Array.from({length:38},()=>Array(r.length).fill(0));return this.employees.forEach(o=>{if(this.selectedCompany&&o.Company!==this.selectedCompany)return;const s=o.Age-23,t=r.indexOf(o.Company);t!==-1&&e[s][t]++}),e.map((o,s)=>{const t={age:s+23};return r.forEach((l,u)=>{t[l]=o[u]}),t})},updateChartData2(){const r=g.employees.filter(t=>this.selectedCompany2?t.company===this.selectedCompany2:!0),e=[],o=[],s=["January","February","March","April","May"];s.forEach((t,l)=>{e[l]=0,o[l]=0}),r.forEach(t=>{const l=new Date(t.date).getMonth();t.action==="Hired"?e[l]+=1:t.action==="Resigned"&&(o[l]+=1)}),this.chartOptions2.xaxis.categories=s,this.series2=[{name:"Hired",data:e},{name:"Resigned",data:o}]}}},S={class:"2xl:col-span-9 lg:col-span-8 col-span-12"},F={class:"mb-4 grid md:grid-cols-4 col-span-1 gap-4"},H={class:"flex items-center space-x-6 rtl:space-x-reverse"},J={class:"flex-none"},V={class:"flex-1"},j={class:"text-slate-800 dark:text-slate-300 text-md mb-1 font-medium"},z={class:"text-slate-900 dark:text-white text-xl font-bold"},W={class:"grid grid-cols-1 gap-5"},K={class:""},P={class:"grid lg:grid-cols-2 grid-cols-1"},U={class:"space-y-2"},Y={class:"flex flex-col justify-end"},X={class:"flex gap-3"},Z={class:"flex gap-0 lg:justify-end"},q={key:0,class:"flex gap-0"},Q=["value"],$={key:0},ee={key:1},te={class:"flex justify-end gap-3"},ae={class:"flex-justify-end"},se={class:"flex gap-1"},ne={key:0,class:"mx-auto w-full mt-4"};function oe(r,e,o,s,t,l){const u=b("apexchart"),_=b("Card"),f=b("Button"),M=b("Layout");return i(),C(M,null,{default:x(()=>[a("div",null,[a("div",S,[a("div",F,[(i(!0),d(h,null,m(t.statistics,(n,p)=>(i(),d("div",{class:N(["py-[18px] px-4 rounded-[6px] shadow-md",n.bg]),key:p},[a("div",H,[a("div",J,[y(u,{type:"area",height:"48",width:"48",options:n.name.chartOptions,series:n.name.series},null,8,["options","series"])]),a("div",V,[a("div",j,c(n.title),1),a("div",z,c(n.count),1)])])],2))),128))]),a("div",W,[a("div",K,[y(_,null,{default:x(()=>[a("div",P,[e[14]||(e[14]=a("div",null,[a("h4",null,"Employee Age Distribution by Gender")],-1)),a("div",U,[a("div",Y,[a("div",X,[a("div",Z,[e[10]||(e[10]=a("label",{for:"chartType",class:"text-slate-500 p-2 bg-slate-200"},"Chart Type:",-1)),v(a("select",{class:"p-2 bg-white border border-slate-200 rounded",id:"chartType","onUpdate:modelValue":e[0]||(e[0]=n=>t.selectedChartType=n),onChange:e[1]||(e[1]=(...n)=>l.updateChartData&&l.updateChartData(...n))},e[9]||(e[9]=[a("option",{value:"gender"},"By Gender",-1),a("option",{value:"company"},"By Company",-1)]),544),[[D,t.selectedChartType]])]),t.selectedChartType==="company"?(i(),d("div",q,[e[12]||(e[12]=a("label",{for:"companyFilter",class:"text-slate-500 p-2 bg-slate-200"},"Company:",-1)),v(a("select",{class:"p-2 bg-white border border-slate-200 rounded",id:"companyFilter","onUpdate:modelValue":e[2]||(e[2]=n=>t.selectedCompany=n),onChange:e[3]||(e[3]=(...n)=>l.updateChartData&&l.updateChartData(...n))},[e[11]||(e[11]=a("option",{value:""},"All Companies",-1)),(i(!0),d(h,null,m(t.companies,n=>(i(),d("option",{key:n,value:n},c(n),9,Q))),128))],544),[[D,t.selectedCompany]])])):w("",!0),e[13]||(e[13]=a("div",{class:"flex"},null,-1))])])])]),t.state.showTable1?(i(),d(h,{key:0},[t.selectedChartType==="company"?(i(),d("div",$,[a("h5",null," Table: Employee Distribution by Age for "+c(t.selectedCompany||"All Companies"),1),a("table",null,[a("thead",null,[a("tr",null,[e[15]||(e[15]=a("th",null,"Age",-1)),(i(!0),d(h,null,m(t.companies,n=>(i(),d("th",{key:n},c(n),1))),128))])]),a("tbody",null,[(i(!0),d(h,null,m(r.tableData,(n,p)=>(i(),d("tr",{key:p},[a("td",null,c(p+23),1),(i(!0),d(h,null,m(n,T=>(i(),d("td",{key:T},c(T),1))),128))]))),128))])])])):w("",!0),t.selectedChartType==="gender"?(i(),d("div",ee,[e[17]||(e[17]=a("h5",null,"Table: Employee Distribution by Age and Gender",-1)),a("table",null,[e[16]||(e[16]=a("thead",null,[a("tr",null,[a("th",null,"Age"),a("th",null,"Male"),a("th",null,"Female")])],-1)),a("tbody",null,[(i(!0),d(h,null,m(r.tableData,(n,p)=>(i(),d("tr",{key:p},[a("td",null,c(p+23),1),a("td",null,c(n.male),1),a("td",null,c(n.female),1)]))),128))])])])):w("",!0)],64)):(i(),C(u,{key:1,type:t.state.chartType1,height:"400",options:t.chartOptions,series:t.series},null,8,["type","options","series"]))]),_:1})]),a("div",null,[y(_,null,{default:x(()=>[a("div",te,[a("div",ae,[e[19]||(e[19]=a("label",{class:"p-2 bg-slate-200"},"Company",-1)),v(a("select",{"onUpdate:modelValue":e[4]||(e[4]=n=>t.selectedCompany2=n),onChange:e[5]||(e[5]=(...n)=>l.updateChartData2&&l.updateChartData2(...n)),class:"p-2 border border-slate-200 bg-white rounded"},[e[18]||(e[18]=a("option",{value:""},"All Companies",-1)),(i(!0),d(h,null,m(t.companies,n=>(i(),d("option",{key:n},c(n),1))),128))],544),[[D,t.selectedCompany2]])]),a("div",se,[y(f,{type:"button",btnClass:(t.state.chartType2=="bar"&&!t.state.showTable2?"border border-cyan-600 text-cyan-600":"btn-outline-secondary border hover:border-cyan-600 hover:text-cyan-600")+" p-1",icon:"ri:bar-chart-2-fill",iconClass:"text-xl",onClick:e[6]||(e[6]=n=>l.switchChart2("bar"))},null,8,["btnClass"]),y(f,{type:"button",btnClass:(t.state.chartType2=="line"&&!t.state.showTable2?"border border-cyan-600 text-cyan-600":"btn-outline-secondary border hover:border-cyan-600 hover:text-cyan-600")+" p-1",icon:"ri:line-chart-line",iconClass:"text-xl",onClick:e[7]||(e[7]=n=>l.switchChart2("line"))},null,8,["btnClass"]),y(f,{type:"button",btnClass:(t.state.showTable2?"border border-cyan-600 text-cyan-600":"btn-outline-secondary border hover:border-cyan-600 hover:text-cyan-600")+" p-1",icon:"ri:file-list-2-line",iconClass:"text-xl",onClick:e[8]||(e[8]=n=>l.switchChart2("table"))},null,8,["btnClass"])])]),t.state.showTable2?(i(),d("table",ne,[e[20]||(e[20]=a("thead",null,[a("tr",null,[a("th",null,"Month"),a("th",null,"Hired"),a("th",null,"Resigned")])],-1)),a("tbody",null,[(i(!0),d(h,null,m(l.chartData2,(n,p)=>(i(),d("tr",{key:p},[a("td",null,c(n.month),1),a("td",null,c(n.hired),1),a("td",null,c(n.resigned),1)]))),128))])])):(i(),C(u,{key:1,type:t.state.chartType2,options:t.chartOptions2,series:t.series2},null,8,["type","options","series"]))]),_:1})])])])])]),_:1})}const Ce=G(R,[["render",oe],["__scopeId","data-v-9ab6117a"]]);export{Ce as default};
| ver. 1.4 |
.
| PHP 8.1.32 | Generation time: 0.06 |
proxy
|
phpinfo
|
Settings