mirror of
https://github.com/inventree/inventree-app.git
synced 2026-07-10 23:01:03 +00:00
display model pk entries (#851)
This commit is contained in:
@@ -385,6 +385,10 @@ class _BuildOrderDetailState extends RefreshableState<BuildOrderDetailWidget> {
|
||||
// Header tile
|
||||
tiles.add(headerTile(context));
|
||||
|
||||
if (showPk) {
|
||||
tiles.add(pkTile(widget.order.pk));
|
||||
}
|
||||
|
||||
// Part information
|
||||
if (widget.order.partDetail != null) {
|
||||
InvenTreePart part = widget.order.partDetail!;
|
||||
|
||||
@@ -125,6 +125,10 @@ class _BuildItemDetailWidgetState
|
||||
List<Widget> getTiles(BuildContext context) {
|
||||
List<Widget> tiles = [];
|
||||
|
||||
if (showPk) {
|
||||
tiles.add(pkTile(widget.item.pk));
|
||||
}
|
||||
|
||||
// Stock item information
|
||||
if (widget.item.stockItem != null) {
|
||||
tiles.add(
|
||||
|
||||
@@ -57,6 +57,10 @@ class _BuildLineDetailWidgetState
|
||||
List<Widget> getTiles(BuildContext context) {
|
||||
List<Widget> tiles = [];
|
||||
|
||||
if (showPk) {
|
||||
tiles.add(pkTile(widget.item.pk));
|
||||
}
|
||||
|
||||
// Reference to the part
|
||||
tiles.add(
|
||||
ListTile(
|
||||
|
||||
@@ -239,6 +239,10 @@ class _CompanyDetailState extends RefreshableState<CompanyDetailWidget> {
|
||||
),
|
||||
);
|
||||
|
||||
if (showPk) {
|
||||
tiles.add(pkTile(widget.company.pk));
|
||||
}
|
||||
|
||||
if (!widget.company.active) {
|
||||
tiles.add(
|
||||
ListTile(
|
||||
|
||||
@@ -125,6 +125,10 @@ class _ManufacturerPartDisplayState
|
||||
List<Widget> getTiles(BuildContext context) {
|
||||
List<Widget> tiles = [];
|
||||
|
||||
if (showPk) {
|
||||
tiles.add(pkTile(widget.manufacturerPart.pk));
|
||||
}
|
||||
|
||||
// Internal Part
|
||||
tiles.add(
|
||||
ListTile(
|
||||
|
||||
@@ -146,6 +146,10 @@ class _SupplierPartDisplayState
|
||||
return tiles;
|
||||
}
|
||||
|
||||
if (showPk) {
|
||||
tiles.add(pkTile(widget.supplierPart.pk));
|
||||
}
|
||||
|
||||
// Internal Part
|
||||
tiles.add(
|
||||
ListTile(
|
||||
|
||||
@@ -68,6 +68,10 @@ class _ExtraLineDetailWidgetState
|
||||
List<Widget> getTiles(BuildContext context) {
|
||||
List<Widget> tiles = [];
|
||||
|
||||
if (showPk) {
|
||||
tiles.add(pkTile(widget.item.pk));
|
||||
}
|
||||
|
||||
tiles.add(
|
||||
ListTile(
|
||||
title: Text(L10().reference),
|
||||
|
||||
@@ -139,6 +139,10 @@ class _POLineDetailWidgetState extends RefreshableState<POLineDetailWidget> {
|
||||
List<Widget> getTiles(BuildContext context) {
|
||||
List<Widget> tiles = [];
|
||||
|
||||
if (showPk) {
|
||||
tiles.add(pkTile(widget.item.pk));
|
||||
}
|
||||
|
||||
// Reference to the part
|
||||
tiles.add(
|
||||
ListTile(
|
||||
|
||||
@@ -404,6 +404,10 @@ class _PurchaseOrderDetailState
|
||||
|
||||
tiles.add(headerTile(context));
|
||||
|
||||
if (showPk) {
|
||||
tiles.add(pkTile(widget.order.pk));
|
||||
}
|
||||
|
||||
if (supportProjectCodes && widget.order.hasProjectCode) {
|
||||
tiles.add(
|
||||
ListTile(
|
||||
|
||||
@@ -344,6 +344,10 @@ class _SalesOrderDetailState extends RefreshableState<SalesOrderDetailWidget> {
|
||||
List<Widget> orderTiles(BuildContext context) {
|
||||
List<Widget> tiles = [headerTile(context)];
|
||||
|
||||
if (showPk) {
|
||||
tiles.add(pkTile(widget.order.pk));
|
||||
}
|
||||
|
||||
InvenTreeCompany? customer = widget.order.customer;
|
||||
|
||||
if (supportsProjectCodes && widget.order.hasProjectCode) {
|
||||
|
||||
@@ -165,6 +165,10 @@ class _SOLineDetailWidgetState extends RefreshableState<SoLineDetailWidget> {
|
||||
List<Widget> getTiles(BuildContext context) {
|
||||
List<Widget> tiles = [];
|
||||
|
||||
if (showPk) {
|
||||
tiles.add(pkTile(widget.item.pk));
|
||||
}
|
||||
|
||||
// Reference to the part
|
||||
tiles.add(
|
||||
ListTile(
|
||||
|
||||
@@ -218,6 +218,10 @@ class _SOShipmentDetailWidgetState
|
||||
List<Widget> shipmentTiles(BuildContext context) {
|
||||
List<Widget> tiles = [];
|
||||
|
||||
if (showPk) {
|
||||
tiles.add(pkTile(widget.shipment.pk));
|
||||
}
|
||||
|
||||
final bool checked = widget.shipment.isChecked;
|
||||
final bool shipped = widget.shipment.isShipped;
|
||||
final bool delivered = widget.shipment.isDelivered;
|
||||
|
||||
@@ -198,6 +198,7 @@ class _CategoryDisplayState extends RefreshableState<CategoryDisplayWidget> {
|
||||
|
||||
List<Widget> tiles = <Widget>[
|
||||
getCategoryDescriptionCard(),
|
||||
if (showPk && widget.category != null) pkTile(widget.category!.pk),
|
||||
Expanded(
|
||||
child: PaginatedPartCategoryList(filters, title: L10().subcategories),
|
||||
flex: 10,
|
||||
|
||||
@@ -355,6 +355,10 @@ class _PartDisplayState extends RefreshableState<PartDetailWidget> {
|
||||
return tiles;
|
||||
}
|
||||
|
||||
if (showPk) {
|
||||
tiles.add(pkTile(part.pk));
|
||||
}
|
||||
|
||||
if (!part.isActive) {
|
||||
tiles.add(
|
||||
ListTile(
|
||||
|
||||
@@ -5,9 +5,12 @@ import "package:flutter_tabler_icons/flutter_tabler_icons.dart";
|
||||
import "package:inventree/api.dart";
|
||||
import "package:inventree/app_colors.dart";
|
||||
import "package:inventree/barcode/barcode.dart";
|
||||
import "package:inventree/l10.dart";
|
||||
import "package:inventree/preferences.dart";
|
||||
|
||||
import "package:inventree/widget/back.dart";
|
||||
import "package:inventree/widget/drawer.dart";
|
||||
import "package:inventree/widget/link_icon.dart";
|
||||
import "package:inventree/widget/search.dart";
|
||||
|
||||
/*
|
||||
@@ -204,9 +207,22 @@ abstract class RefreshableState<T extends StatefulWidget> extends State<T>
|
||||
|
||||
bool get loaded => !loading;
|
||||
|
||||
// Whether to display the "pk" (primary key / ID) value of the loaded model
|
||||
bool showPk = false;
|
||||
|
||||
// Helper function to return API instance
|
||||
InvenTreeAPI get api => InvenTreeAPI();
|
||||
|
||||
// Construct a tile to display the "pk" (primary key / ID) value of a model
|
||||
// Only rendered by callers when the "showPk" setting is enabled
|
||||
Widget pkTile(int pk) {
|
||||
return ListTile(
|
||||
title: Text(L10().pk),
|
||||
leading: Icon(TablerIcons.hash),
|
||||
trailing: LargeText(pk.toString()),
|
||||
);
|
||||
}
|
||||
|
||||
@override
|
||||
void initState() {
|
||||
super.initState();
|
||||
@@ -234,6 +250,8 @@ abstract class RefreshableState<T extends StatefulWidget> extends State<T>
|
||||
loading = true;
|
||||
});
|
||||
|
||||
showPk = await InvenTreeSettingsManager().getBool(INV_SHOW_PK, false);
|
||||
|
||||
await request(context);
|
||||
|
||||
// Escape if the widget is no longer loaded
|
||||
|
||||
@@ -366,6 +366,7 @@ class _LocationDisplayState extends RefreshableState<LocationDisplayWidget> {
|
||||
|
||||
List<Widget> tiles = [
|
||||
locationDescriptionCard(),
|
||||
if (showPk && location != null) pkTile(location!.pk),
|
||||
Expanded(
|
||||
child: PaginatedStockLocationList(filters, title: L10().sublocations),
|
||||
flex: 10,
|
||||
|
||||
@@ -525,6 +525,10 @@ class _StockItemDisplayState extends RefreshableState<StockDetailWidget> {
|
||||
return tiles;
|
||||
}
|
||||
|
||||
if (showPk) {
|
||||
tiles.add(pkTile(widget.item.pk));
|
||||
}
|
||||
|
||||
// Location information
|
||||
if ((widget.item.locationId > 0) && (widget.item.locationName.isNotEmpty)) {
|
||||
tiles.add(
|
||||
|
||||
Reference in New Issue
Block a user