summaryrefslogtreecommitdiff
path: root/indoteknik_custom
diff options
context:
space:
mode:
authorRafi Zadanly <zadanlyr@gmail.com>2023-06-15 16:48:29 +0700
committerRafi Zadanly <zadanlyr@gmail.com>2023-06-15 16:48:29 +0700
commitbc6bc85f455c4b8bc9f73b779b521faa5fcdcf96 (patch)
tree08c434bd0d6935945c95c81eae29b3b4c8aacafb /indoteknik_custom
parent55c67c71b04fce80c635b3a58d91c8bcb02e17c8 (diff)
Update user cart model and API
Diffstat (limited to 'indoteknik_custom')
-rwxr-xr-xindoteknik_custom/__manifest__.py3
-rw-r--r--indoteknik_custom/models/website_user_cart.py25
-rwxr-xr-xindoteknik_custom/security/ir.model.access.csv3
-rwxr-xr-xindoteknik_custom/views/website_user_cart.xml4
4 files changed, 27 insertions, 8 deletions
diff --git a/indoteknik_custom/__manifest__.py b/indoteknik_custom/__manifest__.py
index f21fab0c..7b029a05 100755
--- a/indoteknik_custom/__manifest__.py
+++ b/indoteknik_custom/__manifest__.py
@@ -74,15 +74,12 @@
'views/procurement_monitoring_detail.xml',
'views/product_product.xml',
'views/brand_vendor.xml',
-<<<<<<< HEAD
'views/promotion_program.xml',
'views/promotion_program_line.xml',
'views/promotion_program_free_item.xml',
'views/promotion_program_keyword.xml',
-=======
'views/requisition.xml',
'views/landedcost.xml',
->>>>>>> 24649f8e939484759ef34e5e68f251d951f63c02
'report/report.xml',
'report/report_banner_banner.xml',
'report/report_banner_banner2.xml',
diff --git a/indoteknik_custom/models/website_user_cart.py b/indoteknik_custom/models/website_user_cart.py
index 8046469f..dcd9fa5a 100644
--- a/indoteknik_custom/models/website_user_cart.py
+++ b/indoteknik_custom/models/website_user_cart.py
@@ -5,6 +5,27 @@ class WebsiteUserCart(models.Model):
_name = 'website.user.cart'
_rec_name = 'user_id'
- user_id = fields.Many2one('res.users', string='User', help="User ID yang terdaftar di table res.users")
- product_id = fields.Many2one('product.product', string='Product', help="Product yang terdaftar di table product.product")
+ user_id = fields.Many2one('res.users', string='User')
+ product_id = fields.Many2one('product.product', string='Product')
+ program_line_id = fields.Many2one('promotion.program.line', string='Program', help="Apply program")
qty = fields.Float(string='Quantity', digits='Product Unit of Measure')
+ is_selected = fields.Boolean(string='Selected?', digits='Is selected to process checkout')
+
+ def get_product(self):
+ product_product = self.env['product.product']
+ product = product_product.v2_api_single_response(self.product_id)
+ product['quantity'] = self.qty
+ product['subtotal'] = self.qty * product['price']['price_discount']
+ product['selected'] = self.is_selected
+ return product
+
+ def get_product_by_user(self, user_id, selected = False):
+ user_id = int(user_id)
+ parameters = [('user_id', '=', user_id)]
+ if selected:
+ parameters.append(('is_selected', '=', True))
+ carts = self.search(parameters)
+ products = []
+ for cart in carts:
+ products.append(cart.get_product())
+ return products \ No newline at end of file
diff --git a/indoteknik_custom/security/ir.model.access.csv b/indoteknik_custom/security/ir.model.access.csv
index 3d23529f..c00f5b76 100755
--- a/indoteknik_custom/security/ir.model.access.csv
+++ b/indoteknik_custom/security/ir.model.access.csv
@@ -49,13 +49,10 @@ access_group_partner,access.group.partner,model_group_partner,,1,1,1,1
access_procurement_monitoring_detail,access.procurement.monitoring.detail,model_procurement_monitoring_detail,,1,1,1,1
access_rajaongkir_kurir,access.rajaongkir.kurir,model_rajaongkir_kurir,,1,1,1,1
access_brand_vendor,access.brand.vendor,model_brand_vendor,,1,1,1,1
-<<<<<<< HEAD
access_promotion_program,access.promotion.program,model_promotion_program,,1,1,1,1
access_promotion_program_line,access.promotion.program.line,model_promotion_program_line,,1,1,1,1
access_promotion_program_free_item,access.promotion.program.free_item,model_promotion_program_free_item,,1,1,1,1
access_promotion_program_keyword,access.promotion.program.keyword,model_promotion_program_keyword,,1,1,1,1
-=======
access_requisition,access.requisition,model_requisition,,1,1,1,1
access_requisition_line,access.requisition.line,model_requisition_line,,1,1,1,1
access_requisition_purchase_match,access.requisition.purchase.match,model_requisition_purchase_match,,1,1,1,1
->>>>>>> 24649f8e939484759ef34e5e68f251d951f63c02
diff --git a/indoteknik_custom/views/website_user_cart.xml b/indoteknik_custom/views/website_user_cart.xml
index 890d801c..fbd08acb 100755
--- a/indoteknik_custom/views/website_user_cart.xml
+++ b/indoteknik_custom/views/website_user_cart.xml
@@ -13,7 +13,9 @@
<tree>
<field name="user_id"/>
<field name="product_id"/>
+ <field name="program_line_id"/>
<field name="qty"/>
+ <field name="is_selected"/>
</tree>
</field>
</record>
@@ -28,7 +30,9 @@
<group>
<field name="user_id"/>
<field name="product_id"/>
+ <field name="program_line_id" domain="[('product_id', '=', product_id)]"/>
<field name="qty"/>
+ <field name="is_selected"/>
</group>
<group></group>
</group>