fix: allow both custodian and location while creating asset (copy #36263) (#36264)

fix: allow both custodian and location while creating asset

(cherry picked from commit bff00bc8b2c8911f1513a25f066077e2b0c0adf0)

Co-authored-by: anandbaburajan <anandbaburajan@gmail.com>
This commit is contained in:
mergify[bot] 2023-07-24 15:51:24 +05:30 committed by GitHub
parent 4464b2a21b
commit 1436040d4c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -62,20 +62,21 @@ class AssetMovement(Document):
frappe.throw(_("Source and Target Location cannot be same"))
if self.purpose == "Receipt":
if not (d.source_location or d.from_employee) and not (d.target_location or d.to_employee):
if not (d.source_location) and not (d.target_location or d.to_employee):
frappe.throw(
_("Target Location or To Employee is required while receiving Asset {0}").format(d.asset)
)
elif d.from_employee and not d.target_location:
frappe.throw(
_("Target Location is required while receiving Asset {0} from an employee").format(d.asset)
)
elif d.to_employee and d.target_location:
frappe.throw(
_(
"Asset {0} cannot be received at a location and given to an employee in a single movement"
).format(d.asset)
)
elif d.source_location:
if d.from_employee and not d.target_location:
frappe.throw(
_("Target Location is required while receiving Asset {0} from an employee").format(d.asset)
)
elif d.to_employee and d.target_location:
frappe.throw(
_(
"Asset {0} cannot be received at a location and given to an employee in a single movement"
).format(d.asset)
)
def validate_employee(self):
for d in self.assets: