From fbcc56536b36c72e5d97a66e1b1d22f6bd03a982 Mon Sep 17 00:00:00 2001 From: Suraj Shetty Date: Thu, 1 Aug 2019 12:05:20 +0530 Subject: [PATCH] fix: Rename Pick TIcket -> Pick List --- .../doctype/sales_order/sales_order.js | 2 +- .../doctype/sales_order/sales_order.py | 4 +- .../{pick_ticket => pick_list}/__init__.py | 0 .../pick_ticket.js => pick_list/pick_list.js} | 6 +- .../pick_list.json} | 6 +- .../pick_ticket.py => pick_list/pick_list.py} | 8 +- .../stock/doctype/pick_list/test_pick_list.py | 100 ++++++++++++++++++ .../pick_list_item}/__init__.py | 0 .../pick_list_item}/pick_ticket_item.json | 2 +- .../pick_list_item}/pick_ticket_item.py | 2 +- .../pick_list_reference_item/__init__.py | 0 .../pick_list_reference_item.js} | 2 +- .../pick_list_reference_item.json} | 2 +- .../pick_list_reference_item.py} | 2 +- .../doctype/pick_ticket/test_pick_ticket.py | 100 ------------------ 15 files changed, 118 insertions(+), 118 deletions(-) rename erpnext/stock/doctype/{pick_ticket => pick_list}/__init__.py (100%) rename erpnext/stock/doctype/{pick_ticket/pick_ticket.js => pick_list/pick_list.js} (88%) rename erpnext/stock/doctype/{pick_ticket/pick_ticket.json => pick_list/pick_list.json} (93%) rename erpnext/stock/doctype/{pick_ticket/pick_ticket.py => pick_list/pick_list.py} (97%) create mode 100644 erpnext/stock/doctype/pick_list/test_pick_list.py rename erpnext/stock/doctype/{pick_ticket_item => pick_list_item/pick_list_item}/__init__.py (100%) rename erpnext/stock/doctype/{pick_ticket_item => pick_list_item/pick_list_item}/pick_ticket_item.json (98%) rename erpnext/stock/doctype/{pick_ticket_item => pick_list_item/pick_list_item}/pick_ticket_item.py (88%) create mode 100644 erpnext/stock/doctype/pick_list_reference_item/__init__.py rename erpnext/stock/doctype/{pick_ticket_reference_item/pick_ticket_reference_item.js => pick_list_reference_item/pick_list_reference_item.js} (76%) rename erpnext/stock/doctype/{pick_ticket_reference_item/pick_ticket_reference_item.json => pick_list_reference_item/pick_list_reference_item.json} (96%) rename erpnext/stock/doctype/{pick_ticket_reference_item/pick_ticket_reference_item.py => pick_list_reference_item/pick_list_reference_item.py} (85%) delete mode 100644 erpnext/stock/doctype/pick_ticket/test_pick_ticket.py diff --git a/erpnext/selling/doctype/sales_order/sales_order.js b/erpnext/selling/doctype/sales_order/sales_order.js index 6e6b730bc9..136ff55344 100644 --- a/erpnext/selling/doctype/sales_order/sales_order.js +++ b/erpnext/selling/doctype/sales_order/sales_order.js @@ -110,7 +110,7 @@ erpnext.selling.SalesOrderController = erpnext.selling.SellingController.extend( let allow_delivery = false; if (doc.docstatus==1) { - this.frm.add_custom_button(__('Pick Ticket'), () => this.make_pick_ticket(), __('Create')); + this.frm.add_custom_button(__('Pick List'), () => this.make_pick_ticket(), __('Create')); if(this.frm.has_perm("submit")) { if(doc.status === 'On Hold') { diff --git a/erpnext/selling/doctype/sales_order/sales_order.py b/erpnext/selling/doctype/sales_order/sales_order.py index 5e9a35883e..1d636e3c26 100755 --- a/erpnext/selling/doctype/sales_order/sales_order.py +++ b/erpnext/selling/doctype/sales_order/sales_order.py @@ -1001,13 +1001,13 @@ def make_inter_company_purchase_order(source_name, target_doc=None): def make_pick_ticket(source_name, target_doc=None): doc = get_mapped_doc("Sales Order", source_name, { "Sales Order": { - "doctype": "Pick Ticket", + "doctype": "Pick List", "validation": { "docstatus": ["=", 1] } }, "Sales Order Item": { - "doctype": "Pick Ticket Reference Item", + "doctype": "Pick List Reference Item", "field_map": { "item_code": "item", "parenttype": "reference_doctype", diff --git a/erpnext/stock/doctype/pick_ticket/__init__.py b/erpnext/stock/doctype/pick_list/__init__.py similarity index 100% rename from erpnext/stock/doctype/pick_ticket/__init__.py rename to erpnext/stock/doctype/pick_list/__init__.py diff --git a/erpnext/stock/doctype/pick_ticket/pick_ticket.js b/erpnext/stock/doctype/pick_list/pick_list.js similarity index 88% rename from erpnext/stock/doctype/pick_ticket/pick_ticket.js rename to erpnext/stock/doctype/pick_list/pick_list.js index 5e5881ed62..4cf4cdf78a 100644 --- a/erpnext/stock/doctype/pick_ticket/pick_ticket.js +++ b/erpnext/stock/doctype/pick_list/pick_list.js @@ -1,7 +1,7 @@ // Copyright (c) 2019, Frappe Technologies Pvt. Ltd. and contributors // For license information, please see license.txt -frappe.ui.form.on('Pick Ticket', { +frappe.ui.form.on('Pick List', { setup: (frm) => { frm.set_query('parent_warehouse', () => { return { @@ -16,7 +16,7 @@ frappe.ui.form.on('Pick Ticket', { frm.add_custom_button(__('Delivery Note'), () => frm.trigger('make_delivery_note'), __('Create')); frm.add_custom_button(__('Sales Order'), function() { erpnext.utils.map_current_doc({ - method: "erpnext.selling.doctype.sales_order.sales_order.make_pick_ticket", + method: "erpnext.selling.doctype.sales_order.sales_order.make_pick_list", source_doctype: "Sales Order", target: frm, setters: { @@ -36,7 +36,7 @@ frappe.ui.form.on('Pick Ticket', { }, make_delivery_note(frm) { frappe.model.open_mapped_doc({ - method: "erpnext.stock.doctype.pick_ticket.pick_ticket.make_delivery_note", + method: "erpnext.stock.doctype.pick_list.pick_list.make_delivery_note", frm: frm }); }, diff --git a/erpnext/stock/doctype/pick_ticket/pick_ticket.json b/erpnext/stock/doctype/pick_list/pick_list.json similarity index 93% rename from erpnext/stock/doctype/pick_ticket/pick_ticket.json rename to erpnext/stock/doctype/pick_list/pick_list.json index d8a8e0175c..3f96630faf 100644 --- a/erpnext/stock/doctype/pick_ticket/pick_ticket.json +++ b/erpnext/stock/doctype/pick_list/pick_list.json @@ -43,19 +43,19 @@ "fieldname": "item_locations", "fieldtype": "Table", "label": "Item Locations", - "options": "Pick Ticket Item" + "options": "Pick List Item" }, { "fieldname": "reference_items", "fieldtype": "Table", "label": "Items To Be Picked", - "options": "Pick Ticket Reference Item" + "options": "Pick List Reference Item" } ], "modified": "2019-08-01 10:50:17.055509", "modified_by": "Administrator", "module": "Stock", - "name": "Pick Ticket", + "name": "Pick List", "owner": "Administrator", "permissions": [ { diff --git a/erpnext/stock/doctype/pick_ticket/pick_ticket.py b/erpnext/stock/doctype/pick_list/pick_list.py similarity index 97% rename from erpnext/stock/doctype/pick_ticket/pick_ticket.py rename to erpnext/stock/doctype/pick_list/pick_list.py index 16f6d7a5df..3e45bddfd3 100644 --- a/erpnext/stock/doctype/pick_ticket/pick_ticket.py +++ b/erpnext/stock/doctype/pick_list/pick_list.py @@ -7,7 +7,7 @@ import frappe from frappe.model.document import Document from frappe.model.mapper import get_mapped_doc -class PickTicket(Document): +class PickList(Document): def set_item_locations(self): reference_items = self.reference_items @@ -131,14 +131,14 @@ def set_batch_no(item_doc, parent_doc): @frappe.whitelist() def make_delivery_note(source_name, target_doc=None): - target_doc = get_mapped_doc("Pick Ticket", source_name, { - "Pick Ticket": { + target_doc = get_mapped_doc("Pick List", source_name, { + "Pick List": { "doctype": "Delivery Note", # "validation": { # "docstatus": ["=", 1] # } }, - "Pick Ticket Item": { + "Pick List Item": { "doctype": "Delivery Note Item", "field_map": { "item": "item_code", diff --git a/erpnext/stock/doctype/pick_list/test_pick_list.py b/erpnext/stock/doctype/pick_list/test_pick_list.py new file mode 100644 index 0000000000..ed4b6b58cc --- /dev/null +++ b/erpnext/stock/doctype/pick_list/test_pick_list.py @@ -0,0 +1,100 @@ +# -*- coding: utf-8 -*- +# Copyright (c) 2019, Frappe Technologies Pvt. Ltd. and Contributors +# See license.txt +from __future__ import unicode_literals + +import frappe +import unittest +# test_dependencies = ['Item', 'Sales Invoice', 'Stock Entry', 'Batch'] + +from erpnext.selling.doctype.sales_order.sales_order import make_pick_list + +class TestPickList(unittest.TestCase): + def test_pick_list_picks_warehouse_for_each_item(self): + pick_list = frappe.get_doc({ + 'doctype': 'Pick List', + 'company': '_Test Company', + 'reference_items': [{ + 'item': '_Test Item Home Desktop 100', + 'reference_doctype': 'Sales Order', + 'qty': 5, + 'reference_name': '_T-Sales Order-1', + }], + }) + + pick_list.set_item_locations() + + self.assertEqual(pick_list.items_locations[0].item, '_Test Item Home Desktop 100') + self.assertEqual(pick_list.items_locations[0].warehouse, '_Test Warehouse - _TC') + self.assertEqual(pick_list.items_locations[0].qty, 5) + + def test_pick_list_skips_out_of_stock_item(self): + pick_list = frappe.get_doc({ + 'doctype': 'Pick List', + 'company': '_Test Company', + 'reference_items': [{ + 'item': '_Test Item Warehouse Group Wise Reorder', + 'reference_doctype': 'Sales Order', + 'qty': 1000, + 'reference_name': '_T-Sales Order-1', + }], + }) + + pick_list.set_item_locations() + + self.assertEqual(pick_list.items_locations[0].item, '_Test Item Warehouse Group Wise Reorder') + self.assertEqual(pick_list.items_locations[0].warehouse, '_Test Warehouse Group-C1 - _TC') + self.assertEqual(pick_list.items_locations[0].qty, 30) + + + def test_pick_list_skips_items_in_expired_batch(self): + pass + + def test_pick_list_shows_serial_no_for_serialized_item(self): + + stock_reconciliation = frappe.get_doc({ + 'doctype': 'Stock Reconciliation', + 'company': '_Test Company', + 'items': [{ + 'item_code': '_Test Serialized Item', + 'warehouse': '_Test Warehouse - _TC', + 'qty': 5, + 'serial_no': '123450\n123451\n123452\n123453\n123454' + }] + }) + + stock_reconciliation.submit() + + pick_list = frappe.get_doc({ + 'doctype': 'Pick List', + 'company': '_Test Company', + 'reference_items': [{ + 'item': '_Test Serialized Item', + 'reference_doctype': 'Sales Order', + 'qty': 1000, + 'reference_name': '_T-Sales Order-1', + }], + }) + + pick_list.set_item_locations() + self.assertEqual(pick_list.items_locations[0].item, '_Test Serialized Item') + self.assertEqual(pick_list.items_locations[0].warehouse, '_Test Warehouse Group-C1 - _TC') + self.assertEqual(pick_list.items_locations[0].qty, 30) + self.assertEqual(pick_list.items_locations[0].serial_no, 30) + + + def test_pick_list_for_multiple_reference_doctypes(self): + pass + + +## records required + +''' +batch no +items +sales invoice +stock entries + bin + stock ledger entry +warehouses +''' \ No newline at end of file diff --git a/erpnext/stock/doctype/pick_ticket_item/__init__.py b/erpnext/stock/doctype/pick_list_item/pick_list_item/__init__.py similarity index 100% rename from erpnext/stock/doctype/pick_ticket_item/__init__.py rename to erpnext/stock/doctype/pick_list_item/pick_list_item/__init__.py diff --git a/erpnext/stock/doctype/pick_ticket_item/pick_ticket_item.json b/erpnext/stock/doctype/pick_list_item/pick_list_item/pick_ticket_item.json similarity index 98% rename from erpnext/stock/doctype/pick_ticket_item/pick_ticket_item.json rename to erpnext/stock/doctype/pick_list_item/pick_list_item/pick_ticket_item.json index 67a7e9caa5..c83b696144 100644 --- a/erpnext/stock/doctype/pick_ticket_item/pick_ticket_item.json +++ b/erpnext/stock/doctype/pick_list_item/pick_list_item/pick_ticket_item.json @@ -132,7 +132,7 @@ "modified": "2019-07-30 23:47:53.566473", "modified_by": "Administrator", "module": "Stock", - "name": "Pick Ticket Item", + "name": "Pick List Item", "owner": "Administrator", "permissions": [], "quick_entry": 1, diff --git a/erpnext/stock/doctype/pick_ticket_item/pick_ticket_item.py b/erpnext/stock/doctype/pick_list_item/pick_list_item/pick_ticket_item.py similarity index 88% rename from erpnext/stock/doctype/pick_ticket_item/pick_ticket_item.py rename to erpnext/stock/doctype/pick_list_item/pick_list_item/pick_ticket_item.py index a13666a438..8797b8dc21 100644 --- a/erpnext/stock/doctype/pick_ticket_item/pick_ticket_item.py +++ b/erpnext/stock/doctype/pick_list_item/pick_list_item/pick_ticket_item.py @@ -6,5 +6,5 @@ from __future__ import unicode_literals # import frappe from frappe.model.document import Document -class PickTicketItem(Document): +class PickListItem(Document): pass diff --git a/erpnext/stock/doctype/pick_list_reference_item/__init__.py b/erpnext/stock/doctype/pick_list_reference_item/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/erpnext/stock/doctype/pick_ticket_reference_item/pick_ticket_reference_item.js b/erpnext/stock/doctype/pick_list_reference_item/pick_list_reference_item.js similarity index 76% rename from erpnext/stock/doctype/pick_ticket_reference_item/pick_ticket_reference_item.js rename to erpnext/stock/doctype/pick_list_reference_item/pick_list_reference_item.js index a3f909659b..875ce23a28 100644 --- a/erpnext/stock/doctype/pick_ticket_reference_item/pick_ticket_reference_item.js +++ b/erpnext/stock/doctype/pick_list_reference_item/pick_list_reference_item.js @@ -1,7 +1,7 @@ // Copyright (c) 2019, Frappe Technologies Pvt. Ltd. and contributors // For license information, please see license.txt -frappe.ui.form.on('Pick Ticket Reference Item', { +frappe.ui.form.on('Pick List Reference Item', { // refresh: function(frm) { // } diff --git a/erpnext/stock/doctype/pick_ticket_reference_item/pick_ticket_reference_item.json b/erpnext/stock/doctype/pick_list_reference_item/pick_list_reference_item.json similarity index 96% rename from erpnext/stock/doctype/pick_ticket_reference_item/pick_ticket_reference_item.json rename to erpnext/stock/doctype/pick_list_reference_item/pick_list_reference_item.json index c31e2bcd23..23ef2553a2 100644 --- a/erpnext/stock/doctype/pick_ticket_reference_item/pick_ticket_reference_item.json +++ b/erpnext/stock/doctype/pick_list_reference_item/pick_list_reference_item.json @@ -46,7 +46,7 @@ "modified": "2019-07-30 23:43:30.901151", "modified_by": "Administrator", "module": "Stock", - "name": "Pick Ticket Reference Item", + "name": "Pick List Reference Item", "owner": "Administrator", "permissions": [], "sort_field": "modified", diff --git a/erpnext/stock/doctype/pick_ticket_reference_item/pick_ticket_reference_item.py b/erpnext/stock/doctype/pick_list_reference_item/pick_list_reference_item.py similarity index 85% rename from erpnext/stock/doctype/pick_ticket_reference_item/pick_ticket_reference_item.py rename to erpnext/stock/doctype/pick_list_reference_item/pick_list_reference_item.py index 412be75f88..74f0563cdf 100644 --- a/erpnext/stock/doctype/pick_ticket_reference_item/pick_ticket_reference_item.py +++ b/erpnext/stock/doctype/pick_list_reference_item/pick_list_reference_item.py @@ -6,5 +6,5 @@ from __future__ import unicode_literals # import frappe from frappe.model.document import Document -class PickTicketReferenceItem(Document): +class PickListReferenceItem(Document): pass diff --git a/erpnext/stock/doctype/pick_ticket/test_pick_ticket.py b/erpnext/stock/doctype/pick_ticket/test_pick_ticket.py deleted file mode 100644 index 5a41bc9f2c..0000000000 --- a/erpnext/stock/doctype/pick_ticket/test_pick_ticket.py +++ /dev/null @@ -1,100 +0,0 @@ -# -*- coding: utf-8 -*- -# Copyright (c) 2019, Frappe Technologies Pvt. Ltd. and Contributors -# See license.txt -from __future__ import unicode_literals - -import frappe -import unittest -# test_dependencies = ['Item', 'Sales Invoice', 'Stock Entry', 'Batch'] - -from erpnext.selling.doctype.sales_order.sales_order import make_pick_ticket - -class TestPickTicket(unittest.TestCase): - def test_pick_ticket_picks_warehouse_for_each_item(self): - pick_ticket = frappe.get_doc({ - 'doctype': 'Pick Ticket', - 'company': '_Test Company', - 'reference_items': [{ - 'item': '_Test Item Home Desktop 100', - 'reference_doctype': 'Sales Order', - 'qty': 5, - 'reference_name': '_T-Sales Order-1', - }], - }) - - pick_ticket.set_item_locations() - - self.assertEqual(pick_ticket.items_locations[0].item, '_Test Item Home Desktop 100') - self.assertEqual(pick_ticket.items_locations[0].warehouse, '_Test Warehouse - _TC') - self.assertEqual(pick_ticket.items_locations[0].qty, 5) - - def test_pick_ticket_skips_out_of_stock_item(self): - pick_ticket = frappe.get_doc({ - 'doctype': 'Pick Ticket', - 'company': '_Test Company', - 'reference_items': [{ - 'item': '_Test Item Warehouse Group Wise Reorder', - 'reference_doctype': 'Sales Order', - 'qty': 1000, - 'reference_name': '_T-Sales Order-1', - }], - }) - - pick_ticket.set_item_locations() - - self.assertEqual(pick_ticket.items_locations[0].item, '_Test Item Warehouse Group Wise Reorder') - self.assertEqual(pick_ticket.items_locations[0].warehouse, '_Test Warehouse Group-C1 - _TC') - self.assertEqual(pick_ticket.items_locations[0].qty, 30) - - - def test_pick_ticket_skips_items_in_expired_batch(self): - pass - - def test_pick_ticket_shows_serial_no_for_serialized_item(self): - - stock_reconciliation = frappe.get_doc({ - 'doctype': 'Stock Reconciliation', - 'company': '_Test Company', - 'items': [{ - 'item_code': '_Test Serialized Item', - 'warehouse': '_Test Warehouse - _TC', - 'qty': 5, - 'serial_no': '123450\n123451\n123452\n123453\n123454' - }] - }) - - stock_reconciliation.submit() - - pick_ticket = frappe.get_doc({ - 'doctype': 'Pick Ticket', - 'company': '_Test Company', - 'reference_items': [{ - 'item': '_Test Serialized Item', - 'reference_doctype': 'Sales Order', - 'qty': 1000, - 'reference_name': '_T-Sales Order-1', - }], - }) - - pick_ticket.set_item_locations() - self.assertEqual(pick_ticket.items_locations[0].item, '_Test Serialized Item') - self.assertEqual(pick_ticket.items_locations[0].warehouse, '_Test Warehouse Group-C1 - _TC') - self.assertEqual(pick_ticket.items_locations[0].qty, 30) - self.assertEqual(pick_ticket.items_locations[0].serial_no, 30) - - - def test_pick_ticket_for_multiple_reference_doctypes(self): - pass - - -## records required - -''' -batch no -items -sales invoice -stock entries - bin - stock ledger entry -warehouses -''' \ No newline at end of file