Переглянути джерело

[ADD] stock picking transfer

robert 6 роки тому
батько
коміт
440cc67ac8

+ 4 - 4
controllers/helpers/__init__.py

@@ -17,7 +17,7 @@ from res_partner import get_suppliers
 from res_users import get_current_user
 from server_date import get_date
 from stock_picking_type import get_picking_types
-from stock_picking import get_pickings
+from stock_picking import get_pickings, confirm_picking
 from stock_warehouse import get_warehouses
 
 
@@ -174,9 +174,9 @@ def process_data(data=None):
         paying_order(order_id, supplier_invoice_number, date_now, payment_term_id)
         done_purchase_order(order_id)
 
-    if mode == 'picking':
-        order_id = data.get('orderId')
-        complete_order(order_id)
+    if mode == 'product_taking':
+        stock_picking_id = data.get('stockPickingId')
+        confirm_picking(stock_picking_id)
 
     return {
         'status': 'ok'

+ 6 - 0
controllers/helpers/stock_picking.py

@@ -1,6 +1,7 @@
 # -*- coding: utf-8 -*-
 from openerp.http import request as r
 
+
 def get_pickings():
     purchase_orders = r.env['purchase.order'].search([('from_pop', '=', True)])
     purchase_orders = purchase_orders.mapped(lambda x: x.name)
@@ -42,3 +43,8 @@ def get_pickings():
             }
         } for sp in r.env['stock.picking'].search(domain)
     ]
+
+
+def confirm_picking(stock_picking_id):
+    stock_picking = r.env['stock.picking'].browse(stock_picking_id)
+    stock_picking.do_transfer()

+ 14 - 2
src/components/steps/DeliveryConfirmStep.vue

@@ -1,7 +1,12 @@
 <template lang="pug">
     .purchase-step
         .delivery-confirm-step
-            card-grid
+            card-grid(
+                imageKey='product.image'
+                :items='selectedMoveLines'
+                :headerKeys="['product.name']"
+                :footerKeys="['quantity']"
+            )
 </template>
 
 <script>
@@ -12,9 +17,16 @@
         components: {
             CardGrid
         },
-        computed: mapGetters([])
+        computed: mapGetters([
+            'selectedMoveLines'
+        ])
     }
 </script>
 
 <style lang="sass">
+    .purchase-step
+        .delivery-confirm-step
+            width: 100%
+            height: 100%
+            display: flex
 </style>

+ 23 - 4
src/components/steps/DeliveryStep.vue

@@ -2,8 +2,20 @@
     .purchase-step
         .delivery-selector-step
             .delivery-selector
-                searcher(mode='normal')
-                card-grid
+                searcher(
+                    mode='normal'
+                    :items='stockPickings'
+                    :keys="['name', 'origin', 'partner.name']"
+                    @onSearch='filterStockPickings'
+                )
+                card-grid(
+                    imageKey='partner.image'
+                    :items='visibleStockPickings'
+                    :headerKeys="['name', 'partner.name']"
+                    :footerKeys="['origin']"
+                    :loading='loadingStockPickings'
+                    @onSelect='selectStockPicking'
+                )
 </template>
 
 <script>
@@ -15,8 +27,15 @@
             Searcher,
             CardGrid
         },
-        computed: mapGetters([]),
-        methods: mapActions([])
+        computed: mapGetters([
+            'stockPickings',
+            'visibleStockPickings',
+            'loadingStockPickings'
+        ]),
+        methods: mapActions([
+            'filterStockPickings',
+            'selectStockPicking'
+        ])
     }
 </script>
 

+ 2 - 2
src/store/app.js

@@ -179,7 +179,7 @@ const actions = {
             }
         }
 
-        if (mode == 'product_delivery') {
+        if (mode == 'product_taking') {
             data = {
                 ...data,
                 stockPickingId: getters.selectedStockPicking.id
@@ -214,7 +214,7 @@ const actions = {
                 ...data
             }
         }).then(_ => {
-            dispatch('resetPurchase')
+            dispatch('resetProcess')
 
             commit('setLoading', false)
             commit('setCompleted', true)

+ 1 - 1
src/store/modules/stockPicking.js

@@ -15,7 +15,7 @@ const getters = {
     visibleStockPickings(state)  {
         return state.filteredStockPickings.length === 0 ? state.stockPickings : state.filteredStockPickings
     },
-    selectedStockPickig(state) {
+    selectedStockPicking(state) {
         return state.selectedStockPicking
     },
     selectedMoveLines(state) {