Skip to content

Commit b3a727b

Browse files
fix: purchase receipt itm issue
1 parent cfc98b9 commit b3a727b

File tree

2 files changed

+40
-0
lines changed

2 files changed

+40
-0
lines changed

d2h/hooks.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -228,6 +228,7 @@
228228
doc_events = {
229229
"Purchase Receipt": {
230230
"on_submit": "d2h.overrides.on_submit_purchase_receipt",
231+
"validate": "d2h.overrides.validate_purchase_receipt",
231232
"on_trash": "d2h.overrides.on_delete_purchase_receipt"
232233
},
233234
"*": {

d2h/overrides.py

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,45 @@ def on_submit_purchase_receipt(doc, method):
1313
item_order.custom_good_in_transit_qty = 0
1414
item_order.save()
1515

16+
def validate_purchase_receipt(doc, method):
17+
user_roles = frappe.get_roles(frappe.session.user)
18+
19+
if "Store Dept" in user_roles and "Administrator" not in user_roles:
20+
doc.items = []
21+
for item in doc.custom_item_duplicate:
22+
new_item = doc.append("items", {})
23+
new_item.item_code = item.item_code
24+
new_item.item_name = item.item_code
25+
new_item.qty = item.qty
26+
new_item.uom = item.uom
27+
new_item.base_rate = item.base_rate
28+
new_item.stock_uom = item.stock_uom
29+
new_item.conversion_factor = item.conversion_factor
30+
new_item.received_qty = item.received_qty
31+
new_item.serial_no = item.serial_no
32+
new_item.rejected_qty = item.rejected_qty
33+
new_item.purchase_order = item.purchase_order
34+
new_item.serial_and_batch_bundle = item.serial_and_batch_bundle
35+
new_item.rejected_serial_and_batch_bundle = item.rejected_serial_and_batch_bundle
36+
new_item.use_serial_batch_fields = item.use_serial_batch_fields
37+
else:
38+
doc.custom_item_duplicate = []
39+
for item in doc.items:
40+
new_item = doc.append("custom_item_duplicate", {})
41+
new_item.item_code = item.item_code
42+
new_item.qty = item.qty
43+
new_item.uom = item.uom
44+
new_item.base_rate = item.base_rate
45+
new_item.stock_uom = item.stock_uom
46+
new_item.conversion_factor = item.conversion_factor
47+
new_item.received_qty = item.received_qty
48+
new_item.serial_no = item.serial_no
49+
new_item.rejected_qty = item.rejected_qty
50+
new_item.purchase_order = item.purchase_order
51+
new_item.serial_and_batch_bundle = item.serial_and_batch_bundle
52+
new_item.rejected_serial_and_batch_bundle = item.rejected_serial_and_batch_bundle
53+
new_item.use_serial_batch_fields = item.use_serial_batch_fields
54+
1655
def on_delete_purchase_receipt(doc, method):
1756
on_submit_purchase_receipt(doc, method)
1857

0 commit comments

Comments
 (0)