Documents
This commit is contained in:
parent
2306da7e3d
commit
77407f1810
|
|
@ -486,6 +486,9 @@ abstract class CompanyEntity extends Object
|
|||
|
||||
String get displayName => settings.name ?? '';
|
||||
|
||||
@override
|
||||
bool get isActive => true;
|
||||
|
||||
@override
|
||||
bool matchesFilter(String filter) {
|
||||
for (final user in users) {
|
||||
|
|
@ -753,6 +756,7 @@ abstract class CompanyEntity extends Object
|
|||
|
||||
// ignore: unused_element
|
||||
static void _initializeBuilder(CompanyEntityBuilder builder) => builder
|
||||
..entityType = EntityType.company
|
||||
..calculateExpenseTaxByAmount = false
|
||||
..enableProductDiscount = false
|
||||
..defaultTaskIsDateBased = false
|
||||
|
|
|
|||
|
|
@ -483,7 +483,7 @@ abstract class BaseEntity implements SelectableEntity {
|
|||
ClientEntity client,
|
||||
bool includeEdit = false,
|
||||
bool multiselect = false}) {
|
||||
if (isNew) {
|
||||
if (isNew || entityType == EntityType.company) {
|
||||
return [];
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -83,12 +83,15 @@ class _EntityListTileState extends State<EntityListTile> {
|
|||
final trailing = widget.entity.createdAt == 0
|
||||
? null
|
||||
: IgnorePointer(
|
||||
ignoring: !isHovered || widget.isFilter,
|
||||
ignoring: !isHovered ||
|
||||
widget.isFilter ||
|
||||
widget.entity.entityType == EntityType.company,
|
||||
child: IconButton(
|
||||
icon: Icon(isHovered ||
|
||||
widget.isFilter ||
|
||||
isMobile(context) ||
|
||||
state.uiState.previewStack.isNotEmpty
|
||||
icon: Icon(widget.entity.entityType != EntityType.company &&
|
||||
(isHovered ||
|
||||
widget.isFilter ||
|
||||
isMobile(context) ||
|
||||
state.uiState.previewStack.isNotEmpty)
|
||||
? Icons.chevron_right
|
||||
: Icons.filter_list),
|
||||
onPressed: () => viewEntity(
|
||||
|
|
|
|||
|
|
@ -33,6 +33,7 @@ class EntityPresenter {
|
|||
}
|
||||
|
||||
if ([
|
||||
EntityType.company,
|
||||
EntityType.client,
|
||||
EntityType.vendor,
|
||||
EntityType.project,
|
||||
|
|
|
|||
|
|
@ -1,5 +1,7 @@
|
|||
// Flutter imports:
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:invoiceninja_flutter/ui/app/entities/entity_list_tile.dart';
|
||||
import 'package:invoiceninja_flutter/ui/app/lists/list_divider.dart';
|
||||
|
||||
// Project imports:
|
||||
import 'package:invoiceninja_flutter/ui/app/loading_indicator.dart';
|
||||
|
|
@ -26,17 +28,25 @@ class _DocumentViewState extends State<DocumentView> {
|
|||
@override
|
||||
Widget build(BuildContext context) {
|
||||
final viewModel = widget.viewModel;
|
||||
final state = viewModel.state;
|
||||
final document = viewModel.document;
|
||||
final entity = state.getEntity(document.parentType, document.parentId);
|
||||
|
||||
return ViewScaffold(
|
||||
isFilter: widget.isFilter,
|
||||
entity: document,
|
||||
body: Column(children: [
|
||||
document.data == null
|
||||
? LoadingIndicator()
|
||||
: SizedBox(
|
||||
height: 600,
|
||||
child: document.isImage
|
||||
body: Column(
|
||||
mainAxisAlignment: MainAxisAlignment.start,
|
||||
children: [
|
||||
ListDivider(),
|
||||
EntityListTile(
|
||||
isFilter: widget.isFilter,
|
||||
entity: entity,
|
||||
),
|
||||
Expanded(
|
||||
child: document.data == null
|
||||
? LoadingIndicator()
|
||||
: document.isImage
|
||||
? PinchZoom(
|
||||
child: Image.memory(document.data),
|
||||
)
|
||||
|
|
@ -48,8 +58,9 @@ class _DocumentViewState extends State<DocumentView> {
|
|||
allowSharing: false,
|
||||
canDebug: false,
|
||||
),
|
||||
)
|
||||
]),
|
||||
),
|
||||
],
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -195,6 +195,8 @@ IconData getEntityIcon(EntityType entityType) {
|
|||
return Icons.schedule;
|
||||
case EntityType.document:
|
||||
return Icons.photo;
|
||||
case EntityType.company:
|
||||
return Icons.business;
|
||||
default:
|
||||
return MdiIcons.crosshairsQuestion;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue