summaryrefslogtreecommitdiff
path: root/indoteknik_api/controllers/api_v1
diff options
context:
space:
mode:
authorAzka Nathan <darizkyfaz@gmail.com>2023-07-24 08:55:26 +0700
committerAzka Nathan <darizkyfaz@gmail.com>2023-07-24 08:55:26 +0700
commit968f63a411f8cc9e190a261123e47604ce54c2b2 (patch)
tree60ad4bb324ccc67ab2e9045def163a413675e968 /indoteknik_api/controllers/api_v1
parent2a1179b22cd1b8ee9e3e31c157821dbbeb66195f (diff)
fix bug and refactor api product sla
Diffstat (limited to 'indoteknik_api/controllers/api_v1')
-rw-r--r--indoteknik_api/controllers/api_v1/product.py21
1 files changed, 12 insertions, 9 deletions
diff --git a/indoteknik_api/controllers/api_v1/product.py b/indoteknik_api/controllers/api_v1/product.py
index 587773ee..7ec6459b 100644
--- a/indoteknik_api/controllers/api_v1/product.py
+++ b/indoteknik_api/controllers/api_v1/product.py
@@ -13,32 +13,35 @@ class Product(controller.Controller):
prefix = '/api/v1/'
@http.route(prefix + 'product_variant/<id>/stock', auth='public', methods=['GET', 'OPTIONS'])
- # @controller.Controller.must_authorized()
+ @controller.Controller.must_authorized()
def get_product_template_stock_by_id(self, **kw):
id = int(kw.get('id'))
+ date_7_days_ago = datetime.now() - timedelta(days=7)
product = request.env['product.product'].search([('id', '=', id)], limit=1)
product_sla = request.env['product.sla'].search([('product_variant_id', '=', id)], limit=1)
- stock_vendor = request.env['stock.vendor'].search([('product_variant_id', '=', id)], limit=1)
-
- stock_vendor = stock_vendor.get_stock_updated_last_7_days()
+ stock_vendor = request.env['stock.vendor'].search([
+ ('product_variant_id', '=', id),
+ ('write_date', '>=', date_7_days_ago.strftime("%Y-%m-%d %H:%M:%S"))
+ ], limit=1)
qty_available = product.qty_onhand_bandengan
qty = 0
sla_date = '-'
-
- qty_vendor = stock_vendor.quantity
- qty_vendor -= int(qty_vendor * 0.1)
- qty_vendor = math.ceil(float(qty_vendor))
- total_excell = qty_vendor
is_altama_product = product.x_manufacture.id in [10,122,89]
if is_altama_product:
try:
+ # Qty Altama
qty_altama = request.env['product.template'].get_stock_altama(product.default_code)
qty_altama -= int(qty_altama * 0.1)
qty_altama = math.ceil(float(qty_altama))
total_adem = qty_altama
+ # Qty Stock Vendor
+ qty_vendor = stock_vendor.quantity
+ qty_vendor -= int(qty_vendor * 0.1)
+ qty_vendor = math.ceil(float(qty_vendor))
+ total_excell = qty_vendor
if qty_available > 0:
qty = qty_available + total_adem + total_excell
sla_date = '1 Hari'