Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
18 commits
Select commit Hold shift + click to select a range
bc07d58
feat(file-movement): implement barcode scanning, unified matter files…
Sep 16, 2026
de646ee
fix(scanner): use Html5Qrcode for cross-browser camera barcode scanning
Sep 16, 2026
4a37ab7
feat(workspace): add File Movement shortcut to Case Central workspace
Sep 16, 2026
fe80200
fix(file-movement): automatically return matter status to Open when a…
Sep 28, 2026
62ab6c6
fix: barcode input field with scanner icon and ensure Outgoing status…
Oct 5, 2026
6f79c5f
feat(file-movement): incoming FM starts with empty table, compares sc…
Oct 6, 2026
d356943
fix(file-movement): prevent form dirty state loop on save in file_mov…
Oct 6, 2026
9a3012b
feat(file-movement): enable barcode scanner icon and auto-check in Re…
Oct 6, 2026
24bb76a
feat(file-movement): remove checkboxes from return missing files moda…
Oct 6, 2026
8ac9cf3
feat(file-movement): unified single document lifecycle with outgoing …
Oct 12, 2026
a6d5df8
revert: remove modifications to Matter and Case Central workspace
Oct 13, 2026
ffe7a6f
feat(file-movement): prompt case selection dialog when matter has mul…
Oct 15, 2026
2f8db9b
feat(file-movement): prompt case selection when returning files for m…
Oct 15, 2026
a4092b7
refactor(file-movement): rename barcode_file_item to file_movement_item
Nov 11, 2026
7b93d20
refactor(file-movement): remove unused returned field from File Movem…
Nov 11, 2026
2587fad
fix(file-movement): prevent AttributeError on missing barcode in File…
Nov 11, 2026
4a04e50
revert: restore original File Movement Item fields and structure
Nov 11, 2026
9cb89cf
feat(file-movement): remove redundant returned field and add File Mov…
Nov 11, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Empty file.
1,173 changes: 1,173 additions & 0 deletions casecentral/case_central/doctype/file_movement/file_movement.js

Large diffs are not rendered by default.

180 changes: 180 additions & 0 deletions casecentral/case_central/doctype/file_movement/file_movement.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,180 @@
{
"actions": [],
"allow_bulk_edit": 1,
"autoname": "autoname",
"creation": "2026-08-20 13:14:58.767666",
"doctype": "DocType",
"engine": "InnoDB",
"field_order": [
"giver",
"receiver",
"has_incoming",
"column_break_1",
"movement_date",
"incoming_date",
"status",
"amended_from",
"section_break_outgoing_files",
"scan_outgoing_barcode",
"outgoing_files",
"section_break_incoming_files",
"scan_incoming_barcode",
"incoming_files",
"section_break_missing_files",
"missing_file_items"
],
"fields": [
{
"fieldname": "giver",
"fieldtype": "Link",
"in_list_view": 1,
"label": "Giver",
"options": "Employee",
"reqd": 1
},
{
"fieldname": "receiver",
"fieldtype": "Link",
"in_list_view": 1,
"label": "Receiver",
"options": "Employee",
"reqd": 1
},
{
"default": "0",
"fieldname": "has_incoming",
"fieldtype": "Check",
"hidden": 1,
"label": "Has Incoming"
},
{
"fieldname": "column_break_1",
"fieldtype": "Column Break"
},
{
"default": "Now",
"fieldname": "movement_date",
"fieldtype": "Datetime",
"in_list_view": 1,
"label": "Movement Date",
"reqd": 1
},
{
"allow_on_submit": 1,
"depends_on": "eval:doc.has_incoming || (doc.incoming_files && doc.incoming_files.length > 0)",
"fieldname": "incoming_date",
"fieldtype": "Datetime",
"label": "Incoming Date",
"read_only": 1
},
{
"allow_on_submit": 1,
"default": "Open",
"fieldname": "status",
"fieldtype": "Select",
"in_list_view": 1,
"in_standard_filter": 1,
"label": "Status",
"options": "Open\nMissing Files\nReceived",
"read_only": 1
},
{
"fieldname": "amended_from",
"fieldtype": "Link",
"label": "Amended From",
"no_copy": 1,
"options": "File Movement",
"print_hide": 1,
"read_only": 1,
"search_index": 1
},
{
"fieldname": "section_break_outgoing_files",
"fieldtype": "Section Break",
"label": "Outgoing Files"
},
{
"fieldname": "scan_outgoing_barcode",
"fieldtype": "Data",
"label": "Scan Outgoing Barcode",
"options": "Barcode",
"read_only_depends_on": "eval:doc.docstatus == 1"
},
{
"allow_on_submit": 0,
"fieldname": "outgoing_files",
"fieldtype": "Table",
"label": "Outgoing Files",
"options": "File Movement Item",
"read_only_depends_on": "eval:doc.docstatus == 1",
"reqd": 1
},
{
"collapsible": 0,
"depends_on": "eval:doc.has_incoming || (doc.incoming_files && doc.incoming_files.length > 0)",
"fieldname": "section_break_incoming_files",
"fieldtype": "Section Break",
"label": "Incoming Files"
},
{
"allow_on_submit": 1,
"depends_on": "eval:doc.has_incoming || (doc.incoming_files && doc.incoming_files.length > 0)",
"fieldname": "scan_incoming_barcode",
"fieldtype": "Data",
"label": "Scan Incoming Barcode",
"options": "Barcode"
},
{
"allow_on_submit": 1,
"depends_on": "eval:doc.has_incoming || (doc.incoming_files && doc.incoming_files.length > 0)",
"fieldname": "incoming_files",
"fieldtype": "Table",
"label": "Incoming Files",
"options": "File Movement Item"
},
{
"collapsible": 1,
"depends_on": "eval:doc.status == 'Missing Files' || (doc.missing_file_items && doc.missing_file_items.length > 0)",
"fieldname": "section_break_missing_files",
"fieldtype": "Section Break",
"label": "Missing Files"
},
{
"allow_on_submit": 1,
"fieldname": "missing_file_items",
"fieldtype": "Table",
"label": "Missing Files",
"options": "Missing File Items",
"read_only": 1
}
],
"grid_page_length": 50,
"index_web_pages_for_search": 1,
"is_submittable": 1,
"links": [],
"modified": "2026-10-12 15:00:00.000000",
"modified_by": "Administrator",
"module": "Case Central",
"name": "File Movement",
"naming_rule": "By script",
"owner": "Administrator",
"permissions": [
{
"create": 1,
"delete": 1,
"email": 1,
"export": 1,
"print": 1,
"read": 1,
"report": 1,
"role": "System Manager",
"share": 1,
"write": 1
}
],
"row_format": "Dynamic",
"rows_threshold_for_grid_search": 20,
"sort_field": "creation",
"sort_order": "DESC",
"states": []
}
Loading
Loading