fix: Rename Wishlist Item, Use Website Item Name in Wishlist Cards

- Renamed Wishlist Items to Wishlist Item
- Use Website Item Name in Wishlist
- Add Website Item Name field in Wishlist Item
- Remove accidental extra `font-size` attribute
This commit is contained in:
marination 2021-07-08 13:58:00 +05:30
parent 16abfd4410
commit d897062304
10 changed files with 27 additions and 18 deletions

View File

@ -195,7 +195,7 @@ class WebsiteItem(WebsiteGenerator):
get_item_reviews(self.name, 0, 4, context) get_item_reviews(self.name, 0, 4, context)
context.wished = False context.wished = False
if frappe.db.exists("Wishlist Items", {"item_code": self.item_code, "parent": frappe.session.user}): if frappe.db.exists("Wishlist Item", {"item_code": self.item_code, "parent": frappe.session.user}):
context.wished = True context.wished = True
context.user_is_customer = check_if_user_is_customer() context.user_is_customer = check_if_user_is_customer()

View File

@ -28,13 +28,13 @@
"fieldname": "items", "fieldname": "items",
"fieldtype": "Table", "fieldtype": "Table",
"label": "Items", "label": "Items",
"options": "Wishlist Items" "options": "Wishlist Item"
} }
], ],
"in_create": 1, "in_create": 1,
"index_web_pages_for_search": 1, "index_web_pages_for_search": 1,
"links": [], "links": [],
"modified": "2021-03-24 20:42:58.402031", "modified": "2021-07-08 13:11:21.693956",
"modified_by": "Administrator", "modified_by": "Administrator",
"module": "E-commerce", "module": "E-commerce",
"name": "Wishlist", "name": "Wishlist",

View File

@ -13,11 +13,11 @@ class Wishlist(Document):
def add_to_wishlist(item_code, price, formatted_price=None): def add_to_wishlist(item_code, price, formatted_price=None):
"""Insert Item into wishlist.""" """Insert Item into wishlist."""
if frappe.db.exists("Wishlist Items", {"item_code": item_code, "parent": frappe.session.user}): if frappe.db.exists("Wishlist Item", {"item_code": item_code, "parent": frappe.session.user}):
return return
web_item_data = frappe.db.get_value("Website Item", {"item_code": item_code}, web_item_data = frappe.db.get_value("Website Item", {"item_code": item_code},
["image", "website_warehouse", "name", "item_name", "item_group", "route"] ["image", "website_warehouse", "name", "web_item_name", "item_name", "item_group", "route"]
, as_dict=1) , as_dict=1)
wished_item_dict = { wished_item_dict = {
@ -25,6 +25,7 @@ def add_to_wishlist(item_code, price, formatted_price=None):
"item_name": web_item_data.get("item_name"), "item_name": web_item_data.get("item_name"),
"item_group": web_item_data.get("item_group"), "item_group": web_item_data.get("item_group"),
"website_item": web_item_data.get("name"), "website_item": web_item_data.get("name"),
"web_item_name": web_item_data.get("web_item_name"),
"price": frappe.utils.flt(price), "price": frappe.utils.flt(price),
"formatted_price": formatted_price, "formatted_price": formatted_price,
"image": web_item_data.get("image"), "image": web_item_data.get("image"),
@ -48,10 +49,10 @@ def add_to_wishlist(item_code, price, formatted_price=None):
@frappe.whitelist() @frappe.whitelist()
def remove_from_wishlist(item_code): def remove_from_wishlist(item_code):
if frappe.db.exists("Wishlist Items", {"item_code": item_code, "parent": frappe.session.user}): if frappe.db.exists("Wishlist Item", {"item_code": item_code, "parent": frappe.session.user}):
frappe.db.sql(""" frappe.db.sql("""
delete delete
from `tabWishlist Items` from `tabWishlist Item`
where item_code=%(item_code)s where item_code=%(item_code)s
""" % {"item_code": frappe.db.escape(item_code)}) """ % {"item_code": frappe.db.escape(item_code)})

View File

@ -7,6 +7,7 @@
"field_order": [ "field_order": [
"item_code", "item_code",
"website_item", "website_item",
"web_item_name",
"column_break_3", "column_break_3",
"item_name", "item_name",
"item_group", "item_group",
@ -126,15 +127,23 @@
"fieldname": "formatted_price", "fieldname": "formatted_price",
"fieldtype": "Data", "fieldtype": "Data",
"label": "Formatted Price" "label": "Formatted Price"
},
{
"fetch_from": "website_item.web_item_name",
"fetch_if_empty": 1,
"fieldname": "web_item_name",
"fieldtype": "Data",
"label": "Webiste Item Name",
"read_only": 1
} }
], ],
"index_web_pages_for_search": 1, "index_web_pages_for_search": 1,
"istable": 1, "istable": 1,
"links": [], "links": [],
"modified": "2021-03-18 16:04:52.965613", "modified": "2021-07-08 13:14:14.919749",
"modified_by": "Administrator", "modified_by": "Administrator",
"module": "E-commerce", "module": "E-commerce",
"name": "Wishlist Items", "name": "Wishlist Item",
"owner": "Administrator", "owner": "Administrator",
"permissions": [], "permissions": [],
"sort_field": "modified", "sort_field": "modified",

View File

@ -6,5 +6,5 @@ from __future__ import unicode_literals
# import frappe # import frappe
from frappe.model.document import Document from frappe.model.document import Document
class WishlistItems(Document): class WishlistItem(Document):
pass pass

View File

@ -74,7 +74,7 @@ class ProductQuery:
self.get_stock_availability(item) self.get_stock_availability(item)
item.wished = False item.wished = False
if frappe.db.exists("Wishlist Items", {"item_code": item.item_code, "parent": frappe.session.user}): if frappe.db.exists("Wishlist Item", {"item_code": item.item_code, "parent": frappe.session.user}):
item.wished = True item.wished = True
discounts = [] discounts = []

View File

@ -73,7 +73,6 @@ body.product-page {
border-radius: var(--border-radius); border-radius: var(--border-radius);
font-size: 2rem; font-size: 2rem;
color: var(--gray-500); color: var(--gray-500);
font-size: 52px;
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;

View File

@ -144,7 +144,7 @@
{%- macro wishlist_card(item, settings) %} {%- macro wishlist_card(item, settings) %}
{%- set title = item.item_name or item.item_code -%} {%- set title = item.web_item_name or ''-%}
{%- set title = title[:50] + "..." if title|len > 50 else title -%} {%- set title = title[:50] + "..." if title|len > 50 else title -%}
<div class="col-sm-3 wishlist-card"> <div class="col-sm-3 wishlist-card">
<div class="card text-center" style="height: 100%"> <div class="card text-center" style="height: 100%">
@ -167,15 +167,15 @@
</div> </div>
</div> </div>
{{ wishlist_card_body(item, settings) }} {{ wishlist_card_body(item, title, settings) }}
</div> </div>
</div> </div>
{%- endmacro -%} {%- endmacro -%}
{%- macro wishlist_card_body(item, settings) %} {%- macro wishlist_card_body(item, title, settings) %}
<div class="card-body text-center" style="width: 100%;"> <div class="card-body text-center" style="width: 100%;">
<div style="margin-top: 16px;"> <div style="margin-top: 16px;">
<div class="product-title">{{ item.item_name or item.item_code or ''}}</div> <div class="product-title">{{ title or ''}}</div>
</div> </div>
<div class="product-price"> <div class="product-price">
{{ item.formatted_price or '' }} {{ item.formatted_price or '' }}

View File

@ -45,10 +45,10 @@ def get_wishlist_items():
if frappe.db.exists("Wishlist", frappe.session.user): if frappe.db.exists("Wishlist", frappe.session.user):
return frappe.db.sql(""" return frappe.db.sql("""
Select Select
item_code, item_name, website_item, price, web_item_name, item_code, item_name, website_item, price,
warehouse, image, item_group, route, formatted_price warehouse, image, item_group, route, formatted_price
from from
`tabWishlist Items` `tabWishlist Item`
where where
parent=%(user)s""", {"user": frappe.session.user}, as_dict=1) parent=%(user)s""", {"user": frappe.session.user}, as_dict=1)
return return