This commit is contained in:
@@ -1,27 +1,28 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<v-data-table
|
<v-data-table
|
||||||
:headers="headers"
|
:headers="headers"
|
||||||
:items="desserts"
|
:items="desserts"
|
||||||
:pagination.sync="pagination"
|
:pagination.sync="pagination"
|
||||||
:total-items="totalDesserts"
|
:total-items="totalDesserts"
|
||||||
:loading="loading"
|
:loading="loading"
|
||||||
class="elevation-1"
|
class="elevation-1"
|
||||||
>
|
>
|
||||||
<template slot="items" slot-scope="props">
|
<template slot="items" slot-scope="props">
|
||||||
<td>{{ props.item.name }}</td>
|
<td>{{ props.item.name }}</td>
|
||||||
<td class="text-xs-right">{{ props.item.calories }}</td>
|
<td class="text-xs-right">{{ props.item.calories }}</td>
|
||||||
<td class="text-xs-right">{{ props.item.fat }}</td>
|
<td class="text-xs-right">{{ props.item.fat }}</td>
|
||||||
<td class="text-xs-right">{{ props.item.carbs }}</td>
|
<td class="text-xs-right">{{ props.item.carbs }}</td>
|
||||||
<td class="text-xs-right">{{ props.item.protein }}</td>
|
<td class="text-xs-right">{{ props.item.protein }}</td>
|
||||||
<td class="text-xs-right">{{ props.item.iron }}</td>
|
<td class="text-xs-right">{{ props.item.iron }}</td>
|
||||||
</template>
|
</template>
|
||||||
</v-data-table>
|
</v-data-table>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
//https://vuetifyjs.com/en/components/data-tables#example-server
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
|||||||
18
app/ayanova/src/components/inventorypartassemblytop.vue
Normal file
18
app/ayanova/src/components/inventorypartassemblytop.vue
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
<template>
|
||||||
|
<v-container>
|
||||||
|
<v-layout text-xs-center wrap="">
|
||||||
|
<v-flex mb-4>
|
||||||
|
<h1 class="display-2 font-weight-bold mb-3">TOP Part assembly</h1>
|
||||||
|
</v-flex>
|
||||||
|
</v-layout>
|
||||||
|
</v-container>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
data: () => ({})
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
</style>
|
||||||
18
app/ayanova/src/components/inventoryparttop.vue
Normal file
18
app/ayanova/src/components/inventoryparttop.vue
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
<template>
|
||||||
|
<v-container>
|
||||||
|
<v-layout text-xs-center wrap="">
|
||||||
|
<v-flex mb-4>
|
||||||
|
<h1 class="display-2 font-weight-bold mb-3">TOP Parts</h1>
|
||||||
|
</v-flex>
|
||||||
|
</v-layout>
|
||||||
|
</v-container>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
data: () => ({})
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
</style>
|
||||||
18
app/ayanova/src/components/inventorypotop.vue
Normal file
18
app/ayanova/src/components/inventorypotop.vue
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
<template>
|
||||||
|
<v-container>
|
||||||
|
<v-layout text-xs-center wrap="">
|
||||||
|
<v-flex mb-4>
|
||||||
|
<h1 class="display-2 font-weight-bold mb-3">TOP Purchase orders</h1>
|
||||||
|
</v-flex>
|
||||||
|
</v-layout>
|
||||||
|
</v-container>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
data: () => ({})
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
</style>
|
||||||
18
app/ayanova/src/components/inventorywarehousetop.vue
Normal file
18
app/ayanova/src/components/inventorywarehousetop.vue
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
<template>
|
||||||
|
<v-container>
|
||||||
|
<v-layout text-xs-center wrap="">
|
||||||
|
<v-flex mb-4>
|
||||||
|
<h1 class="display-2 font-weight-bold mb-3">Top Warehouses</h1>
|
||||||
|
</v-flex>
|
||||||
|
</v-layout>
|
||||||
|
</v-container>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
data: () => ({})
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
</style>
|
||||||
18
app/ayanova/src/components/inventorywidgettop.vue
Normal file
18
app/ayanova/src/components/inventorywidgettop.vue
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
<template>
|
||||||
|
<v-container>
|
||||||
|
<v-layout text-xs-center wrap="">
|
||||||
|
<v-flex mb-4>
|
||||||
|
<h1 class="display-2 font-weight-bold mb-3">TOP WIDGET</h1>
|
||||||
|
</v-flex>
|
||||||
|
</v-layout>
|
||||||
|
</v-container>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
data: () => ({})
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
</style>
|
||||||
@@ -46,6 +46,12 @@ export default new Router({
|
|||||||
path: "/log",
|
path: "/log",
|
||||||
name: "log",
|
name: "log",
|
||||||
component: () => import(/* webpackChunkName: "log" */ "./views/log.vue")
|
component: () => import(/* webpackChunkName: "log" */ "./views/log.vue")
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: "/inventory",
|
||||||
|
name: "inventory",
|
||||||
|
component: () =>
|
||||||
|
import(/* webpackChunkName: "inventory" */ "./views/inventory.vue")
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
});
|
});
|
||||||
|
|||||||
60
app/ayanova/src/views/inventory.vue
Normal file
60
app/ayanova/src/views/inventory.vue
Normal file
@@ -0,0 +1,60 @@
|
|||||||
|
<template>
|
||||||
|
<v-layout row>
|
||||||
|
<WidgetTop/>
|
||||||
|
<PartTop/>
|
||||||
|
<PartAssemblyTop/>
|
||||||
|
<WarehouseTop/>
|
||||||
|
<POTop/>
|
||||||
|
</v-layout>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
/* xeslint-disable */
|
||||||
|
import WidgetTop from "../components/inventorywidgettop";
|
||||||
|
import WarehouseTop from "../components/inventorywarehousetop";
|
||||||
|
import POTop from "../components/inventorypotop";
|
||||||
|
import PartTop from "../components/inventoryparttop";
|
||||||
|
import PartAssemblyTop from "../components/inventorypartassemblytop";
|
||||||
|
/*
|
||||||
|
HMMM?? - Maybe top level category is "part" and inventory is a sub item like the rest since they all revolve around parts but are not all inventory
|
||||||
|
*/
|
||||||
|
|
||||||
|
// - PART REQUESTS OVERVIEW ETC....
|
||||||
|
// - PART ASSEMBLIES
|
||||||
|
// - PART CATEGORIES
|
||||||
|
// - PART WAREHOUSES
|
||||||
|
// - PARTS
|
||||||
|
// - Part inventory
|
||||||
|
// - Part inventory adjustments
|
||||||
|
|
||||||
|
//import store from "../store";
|
||||||
|
import lt from "../api/locale";
|
||||||
|
//import _ from "../utils/libs/lodash.js";
|
||||||
|
export default {
|
||||||
|
components: {
|
||||||
|
WidgetTop,
|
||||||
|
WarehouseTop,
|
||||||
|
POTop,
|
||||||
|
PartTop,
|
||||||
|
PartAssemblyTop
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {};
|
||||||
|
},
|
||||||
|
beforeRouteEnter(to, from, next) {
|
||||||
|
//get lt, roles, populate top level components accordingly
|
||||||
|
lt.fetch(["Inventory"]).then(() => {
|
||||||
|
next();
|
||||||
|
});
|
||||||
|
},
|
||||||
|
mounted() {},
|
||||||
|
methods: {
|
||||||
|
lt: function(key) {
|
||||||
|
return lt.get(key);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
</style>
|
||||||
@@ -33,6 +33,29 @@ Requirements
|
|||||||
- or for a Ops person they can plunk down on their dashboard a current server status widget or active jobs widget etc
|
- or for a Ops person they can plunk down on their dashboard a current server status widget or active jobs widget etc
|
||||||
|
|
||||||
|
|
||||||
|
EXAMPLE UI INTERACTION ELEMENTS:
|
||||||
|
=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=
|
||||||
|
CATEGORY NAV MENU ITEM -> SHOWS TOP LEVEL UI COMPONENT SPACE / PAGE
|
||||||
|
TOP PAGE -> SHOWS TOP LEVEL WIDGETS FOR THAT CATEGORY WHICH ARE USED TO DRILL DOWN INTO WHATEVER YOU WANT TO DO WITH IT
|
||||||
|
TOP WIDGETS -> SHOW SUMMARY INFO WITH OPTIONS FOR ACTIONS ON THAT ITEM
|
||||||
|
|
||||||
|
EXAMPLE:
|
||||||
|
SELECT NAV.INVENTORY -> SHOWS MULTIPLE TOP LEVEL UI WIDGETS RELATED TO INVENTORY:
|
||||||
|
- PARTS OVERVIEW WITH SUMMARY DATA OF TOP LEVEL INTEREST
|
||||||
|
- LINKS TO: CREATE, LIST, REPORT, GRAPHS (BASED ON ROLES), PLUGINS THAT AFFECT ALL INVENTORY
|
||||||
|
- LIST OPTION: SHOWS LIST OF PARTS WITH ABILITY TO EDIT, DELETE, MASS SELECT AND CHANGE (plugins, delete, tag etc), FILTER BY TAG, DATE RANGE, SORT ETC
|
||||||
|
- PO OVERVIEW WITH SUMMARY DATA OF TOP LEVEL INTEREST
|
||||||
|
- LINKS TO: CREATE, LIST, REPORTS, GRAPHS (ROLES CONTROLLED)
|
||||||
|
- PART REQUESTS OVERVIEW ETC....
|
||||||
|
- PART ASSEMBLIES
|
||||||
|
- PART CATEGORIES
|
||||||
|
- PART WAREHOUSES
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Graphics and themes for AyaNova
|
Graphics and themes for AyaNova
|
||||||
- No bitmap graphics, vector only!!
|
- No bitmap graphics, vector only!!
|
||||||
- For the manual and docs will use material theme with MKDOCS generator.
|
- For the manual and docs will use material theme with MKDOCS generator.
|
||||||
|
|||||||
@@ -4,10 +4,9 @@ Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpYXQiOiIxNTQyNjY5Njc3IiwiZXhwIjoi
|
|||||||
|
|
||||||
|
|
||||||
## IMMEDIATE ITEMS
|
## IMMEDIATE ITEMS
|
||||||
|
|
||||||
- Colors
|
|
||||||
- what are the application colors going to be and start using them now.
|
|
||||||
- Widget list component that works with real data
|
- Widget list component that works with real data
|
||||||
|
- https://vuetifyjs.com/en/components/data-tables#example-server
|
||||||
- Displays as a smaller item with maybe a count of widgets only that is expandable into a list of widgets
|
- Displays as a smaller item with maybe a count of widgets only that is expandable into a list of widgets
|
||||||
- paging, sorting, filtering (by tag), items per page
|
- paging, sorting, filtering (by tag), items per page
|
||||||
- Stored locally with client so each client app can have individual settings (i.e. phone vs desktop can have alternate settings for same user)
|
- Stored locally with client so each client app can have individual settings (i.e. phone vs desktop can have alternate settings for same user)
|
||||||
|
|||||||
Reference in New Issue
Block a user