PageSourceSearch

https://account.micromilspec.com/build/assets/ProjectStatistics-CGYa90gV.js

js micromilspec.com collected 2026-10-07 03:33:17 UTC 9,442 bytes, 1 lines download raw bytes

1import{l as T,w as V,N as D,a as c,b as t,e as o,i as r,g as l,f as C,u as e,h as d,o as n,F as _,r as p,t as u,j as q,n as z}from"./app-D7w3B4aJ.js";import{_ as O}from"./ReportsLayout-W6fgVWBD.js";import{_ as A}from"./index-CevIKuGi.js";import{_ as x,a as g}from"./CardContent.vue_vue_type_script_setup_true_lang-4JbJtrQQ.js";import{_ as v,a as j}from"./CardTitle.vue_vue_type_script_setup_true_lang-Cb0xAGrz.js";import{_ as F}from"./CardDescription.vue_vue_type_script_setup_true_lang-Bveub0ve.js";import{e as w,_ as $,a as y,b as f,c as B,d as m}from"./TableRow.vue_vue_type_script_setup_true_lang-CQqGRrw2.js";import{_ as Q,a as E,b as I,c as L,d as U}from"./SelectItem.vue_vue_type_script_setup_true_lang-CEKu5SYz.js";import{_ as G,a as H}from"./SelectLabel.vue_vue_type_script_setup_true_lang-WX-UQJUv.js";import{B as J}from"./bar-chart-3-B5imB6Io.js";import"./AdminLayout.vue_vue_type_script_setup_true_lang-CZLWBtiM.js";import"./index-DjnFMCfw.js";import"./DropdownMenuContent.vue_vue_type_script_setup_true_lang-Ri4XGI3F.js";import"./createLucideIcon-B668pyko.js";import"./x-DKm8XY3A.js";import"./message-square-D7mTy92E.js";import"./check-D8hauryK.js";const K={class:"space-y-8"},M={class:"flex items-center gap-4"},R={key:0,class:"rounded-md border p-8 text-center text-muted-foreground"},W={class:"space-y-1"},X={class:"text-xl font-semibold tracking-tight"},Y={key:0,class:"space-y-6"},Z={class:"rounded-md border"},h={key:0,class:"space-y-3"},ee={class:"rounded-md border"},te={key:1,class:"text-center text-muted-foreground text-sm p-4 rounded-md border"},le={class:"space-y-4"},se={class:"grid gap-4 grid-cols-2 lg:grid-cols-4"},ae={class:"text-2xl font-bold"},de={class:"text-2xl font-bold"},ne={class:"text-2xl font-bold"},ue={class:"text-2xl font-bold"},ie={key:0},oe={class:"rounded-md border"},re={key:1,class:"text-center text-muted-foreground text-sm p-4 rounded-md border"},Ne={__name:"ProjectStatistics",props:{projects:{type:Array,default:()=>[]},project:{type:Object,default:null},productPerformance:{type:Array,default:null},timepieceStats:{type:Object,default:null},query:{type:Object,default:()=>({})}},setup(i){var N;const P=i,k=T((N=P.query)!=null&&N.project_id?String(P.query.project_id):null);return V(k,S=>{const s={};S&&(s.project_id=S),D.visit(route("admin.reports.project-statistics",s))}),(S,s)=>(n(),c(O,{title:"Project Statistics",description:"Product and timepiece sales performance for a selected project.",icon:e(J)},{default:t(()=>[o("div",K,[o("div",M,[l(e(Q),{modelValue:k.value,"onUpdate:modelValue":s[0]||(s[0]=a=>k.value=a)},{default:t(()=>[l(e(E),{class:"w-[280px]"},{default:t(()=>[l(e(I),{placeholder:"Select a project"})]),_:1}),l(e(L),null,{default:t(()=>[l(e(G),null,{default:t(()=>[l(e(H),null,{default:t(()=>[...s[1]||(s[1]=[d("Project",-1)])]),_:1}),(n(!0),r(_,null,p(i.projects,a=>(n(),c(e(U),{key:a.id,value:String(a.id)},{default:t(()=>[d(u(a.name),1)]),_:2},1032,["value"]))),128))]),_:1})]),_:1})]),_:1},8,["modelValue"]),i.project?(n(),c(e(q),{key:0,href:S.route("admin.projects.show",{id:i.project.data.id})},{default:t(()=>[l(e(A),{variant:"outline",size:"sm"},{default:t(()=>[...s[2]||(s[2]=[d("Back to Project",-1)])]),_:1})]),_:1},8,["href"])):C("",!0)]),i.project?(n(),r(_,{key:1},[o("div",W,[o("h3",X,u(i.project.data.name)+" — Product Sales Breakdown ",1),s[3]||(s[3]=o("p",{class:"text-muted-foreground"},"Detailed breakdown of product sales including bundles",-1))]),i.productPerformance&&i.productPerformance.length>0?(n(),r("div",Y,[o("div",Z,[l(e(w),null,{default:t(()=>[l(e($),null,{default:t(()=>[l(e(y),null,{default:t(()=>[l(e(f),null,{default:t(()=>[...s[4]||(s[4]=[d("Product Name",-1)])]),_:1}),l(e(f),null,{default:t(()=>[...s[5]||(s[5]=[d("Type",-1)])]),_:1}),l(e(f),null,{default:t(()=>[...s[6]||(s[6]=[d("Quantity",-1)])]),_:1}),l(e(f),null,{default:t(()=>[...s[7]||(s[7]=[d("Orders Count",-1)])]),_:1}),l(e(f),null,{default:t(()=>[...s[8]||(s[8]=[d("Bundle Sales",-1)])]),_:1}),l(e(f),null,{default:t(()=>[...s[9]||(s[9]=[d("Direct Sales",-1)])]),_:1}),l(e(f),null,{default:t(()=>[...s[10]||(s[10]=[d("Timepieces Sold",-1)])]),_:1})]),_:1})]),_:1}),l(e(B),null,{default:t(()=>[(n(!0),r(_,null,p(i.productPerformance,a=>(n(),c(e(y),{key:a.id},{default:t(()=>[l(e(m),{class:"font-medium"},{default:t(()=>[d(u(a.name),1)]),_:2},1024),l(e(m),null,{default:t(()=>[o("span",{class:z(["text-xs px-2 py-1 rounded-full",{"bg-blue-100 text-blue-800":a.type==="bundle","bg-green-100 text-green-800":a.type==="timepiece","bg-gray-100 text-gray-800":!["bundle","timepiece"].includes(a.type)}])},u(a.type),3)]),_:2},1024),l(e(m),null,{default:t(()=>[d(u(a.quantity),1)]),_:2},1024),l(e(m),null,{default:t(()=>[d(u(a.orders_count||0),1)]),_:2},1024),l(e(m),null,{default:t(()=>[d(u(a.bundle_sales||0),1)]),_:2},1024),l(e(m),null,{default:t(()=>[d(u(a.direct_sales||0),1)]),_:2},1024),l(e(m),null,{default:t(()=>[d(u(a.timepieces_sold||0),1)]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1})]),i.productPerformance.some(a=>a.type==="bundle"&&a.components&&a.components.length>0)?(n(),r("div",h,[s[14]||(s[14]=o("h4",{class:"text-sm font-medium"}
1,"Bundle Components Breakdown",-1)),o("div",ee,[l(e(w),null,{default:t(()=>[l(e($),null,{default:t(()=>[l(e(y),null,{default:t(()=>[l(e(f),null,{default:t(()=>[...s[11]||(s[11]=[d("Bundle Name",-1)])]),_:1}),l(e(f),null,{default:t(()=>[...s[12]||(s[12]=[d("Component",-1)])]),_:1}),l(e(f),null,{default:t(()=>[...s[13]||(s[13]=[d("Quantity",-1)])]),_:1})]),_:1})]),_:1}),l(e(B),null,{default:t(()=>[(n(!0),r(_,null,p(i.productPerformance.filter(a=>a.type==="bundle"&&a.components&&a.components.length>0),a=>(n(),c(e(y),{key:a.id},{default:t(()=>[l(e(m),{class:"font-medium"},{default:t(()=>[d(u(a.name),1)]),_:2},1024),l(e(m),null,{default:t(()=>[(n(!0),r(_,null,p(a.components,b=>(n(),r("div",{key:b.id,class:"text-sm"},u(b.name),1))),128))]),_:2},1024),l(e(m),null,{default:t(()=>[(n(!0),r(_,null,p(a.components,b=>(n(),r("div",{key:b.id,class:"text-sm"},u(b.quantity)+"x ",1))),128))]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1})])])):C("",!0)])):(n(),r("div",te," No products sold. ")),o("div",le,[s[26]||(s[26]=o("div",{class:"space-y-1"},[o("h3",{class:"text-xl font-semibold tracking-tight"},"Timepiece Sales Statistics"),o("p",{class:"text-muted-foreground"},"Overview of timepiece sales performance")],-1)),o("div",se,[l(e(x),null,{default:t(()=>[l(e(v),{class:"flex flex-row items-center justify-between space-y-0 pb-2"},{default:t(()=>[l(e(j),{class:"text-sm font-medium"},{default:t(()=>[...s[15]||(s[15]=[d("Total Timepieces",-1)])]),_:1})]),_:1}),l(e(g),null,{default:t(()=>{var a;return[o("div",ae,u(((a=i.timepieceStats)==null?void 0:a.total_timepieces_sold)||0),1)]}),_:1})]),_:1}),l(e(x),null,{default:t(()=>[l(e(v),{class:"flex flex-row items-center justify-between space-y-0 pb-2"},{default:t(()=>[l(e(j),{class:"text-sm font-medium"},{default:t(()=>[...s[16]||(s[16]=[d("Direct Sales",-1)])]),_:1})]),_:1}),l(e(g),null,{default:t(()=>{var a;return[o("div",de,u(((a=i.timepieceStats)==null?void 0:a.direct_timepiece_sales)||0),1)]}),_:1})]),_:1}),l(e(x),null,{default:t(()=>[l(e(v),{class:"flex flex-row items-center justify-between space-y-0 pb-2"},{default:t(()=>[l(e(j),{class:"text-sm font-medium"},{default:t(()=>[...s[17]||(s[17]=[d("Bundle Sales",-1)])]),_:1})]),_:1}),l(e(g),null,{default:t(()=>{var a;return[o("div",ne,u(((a=i.timepieceStats)==null?void 0:a.bundle_timepiece_sales)||0),1)]}),_:1})]),_:1}),l(e(x),null,{default:t(()=>[l(e(v),{class:"flex flex-row items-center justify-between space-y-0 pb-2"},{default:t(()=>[l(e(j),{class:"text-sm font-medium"},{default:t(()=>[...s[18]||(s[18]=[d("Serialized",-1)])]),_:1})]),_:1}),l(e(g),null,{default:t(()=>{var a;return[o("div",ue,u(((a=i.timepieceStats)==null?void 0:a.timepieces_with_serial_numbers)||0),1)]}),_:1})]),_:1})]),i.timepieceStats&&i.timepieceStats.by_product_type&&i.timepieceStats.by_product_type.length>0?(n(),r("div",ie,[l(e(x),null,{default:t(()=>[l(e(v),null,{default:t(()=>[l(e(j),null,{default:t(()=>[...s[19]||(s[19]=[d("Timepiece Breakdown by Product",-1)])]),_:1}),l(e(F),null,{default:t(()=>[...s[20]||(s[20]=[d("Detailed breakdown of timepiece sales by product type",-1)])]),_:1})]),_:1}),l(e(g),null,{default:t(()=>[o("div",oe,[l(e(w),null,{default:t(()=>[l(e($),null,{default:t(()=>[l(e(y),null,{default:t(()=>[l(e(f),null,{default:t(()=>[...s[21]||(s[21]=[d("Product Name",-1)])]),_:1}),l(e(f),null,{default:t(()=>[...s[22]||(s[22]=[d("Direct Sales",-1)])]),_:1}),l(e(f),null,{default:t(()=>[...s[23]||(s[23]=[d("Bundle Sales",-1)])]),_:1}),l(e(f),null,{default:t(()=>[...s[24]||(s[24]=[d("Total Sold",-1)])]),_:1}),l(e(f),null,{default:t(()=>[...s[25]||(s[25]=[d("Serialized Count",-1)])]),_:1})]),_:1})]),_:1}),l(e(B),null,{default:t(()=>[(n(!0),r(_,null,p(i.timepieceStats.by_product_type,a=>(n(),c(e(y),{key:a.id},{default:t(()=>[l(e(m),{class:"font-medium"},{default:t(()=>[d(u(a.name),1)]),_:2},1024),l(e(m),null,{default:t(()=>[d(u(a.direct_sales),1)]),_:2},1024),l(e(m),null,{default:t(()=>[d(u(a.bundle_sales),1)]),_:2},1024),l(e(m),null,{default:t(()=>[d(u(a.total_sold),1)]),_:2},1024),l(e(m),null,{default:t(()=>[d(u(a.serialized_count),1)]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1})])]),_:1})]),_:1})])):(n(),r("div",re," No timepiece statistics available. "))])],64)):(n(),r("div",R," Select a project to view its statistics report. "))])]),_:1},8,["icon"]))}};export{Ne as default};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.