comee_core 0.2.62 → 0.2.63

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b3647a23605f256be409ffe92d604c6c3cf2145c59973380f73d38ac866b5249
4
- data.tar.gz: e8ddef5687858b3b4c4f443e5f1f8235e7c3bf11c90b9b2270589855106a13e5
3
+ metadata.gz: 36796a6606f2d0516da94431c5165d8449b9b21a5a9e02b12b94a2ba58c9bde5
4
+ data.tar.gz: 85afb2f2bbc84f87dc49601f5b2fe6b281015ff8b53fe194eaef4fb7da9e40e0
5
5
  SHA512:
6
- metadata.gz: 29924b04d90bbd2daa6d4e59077713c42491b94dceaf98a351c94ea433f06af36e582600a775580cee02ba55d99f019d4a20ccec6eaf0fd3125a9f7cd40cc7c9
7
- data.tar.gz: 91469b52049d64914608cd1b73e1ea2a0026a1b16486f7ba01691bbe6715e7a3b94eee935ef5a930b0fe4f5b97c92626e69b216875ba07fedcbeeb87d1fb4fc9
6
+ metadata.gz: 5c6498bfb8766b7bcea41ac295bff64100973220c495fcc13aea50a5ccf17038b6767c5dd1df6a123d8cf1b24ab4c9e348050137edfbf6fc4dc161f1888558d2
7
+ data.tar.gz: 8adac38add7f7532b7f487b36c057dd578856bf186e54c7d0db00d06479bf4bbc7adf0924b606ae618668e68cdef5024ffd90f83a494e3808ce032b8d633b2b3
@@ -6,9 +6,10 @@ module Comee
6
6
  has_many :purchase_requisition_items
7
7
 
8
8
  enum :status, {draft: 0, submitted: 1, approved: 2, rejected: 3}
9
+ enum :purchase_status, {unprocessed: 0, processed: 1}
9
10
 
10
11
  validates :requisition_no, presence: true, uniqueness: true
11
- validates :requisition_date, :status, presence: true
12
+ validates :requisition_date, :status, :purchase_status, presence: true
12
13
 
13
14
  def self.ransackable_attributes(_auth_object = nil)
14
15
  %w[created_at id remark requisition_date requisition_no status total_price updated_at]
@@ -3,6 +3,7 @@ module Comee
3
3
  class PurchaseRequisitionItem < ApplicationRecord
4
4
  before_save :calculate_total_price
5
5
  after_save :calculate_requisition_price
6
+ after_save :update_requisition_purchase_status, if: proc { |item| item.fully_processed? }
6
7
 
7
8
  enum processing_status: {unprocessed: 0, partially_processed: 1, fully_processed: 2}
8
9
 
@@ -24,6 +25,13 @@ module Comee
24
25
  purchase_requisition.save!
25
26
  end
26
27
 
28
+ def update_requisition_purchase_status
29
+ return unless purchase_requisition.purchase_requisition_items.all.all?(&:fully_processed?)
30
+
31
+ purchase_requisition.purchase_status = PurchaseRequisition.purchase_statuses[:processed]
32
+ purchase_requisition.save!
33
+ end
34
+
27
35
  def self.ransackable_attributes(_auth_object = nil)
28
36
  %w[
29
37
  delivery_date
@@ -12,9 +12,10 @@ module Comee
12
12
  has_one :customs_detail
13
13
 
14
14
  enum :status, {draft: 0, submitted: 1, confirmed: 2, accepted: 3, canceled: 4}
15
+ enum :purchase_status, {unprocessed: 0, processed: 1}
15
16
 
16
17
  validates :order_number, presence: true, uniqueness: true
17
- validates :order_date, :status, presence: true
18
+ validates :order_date, :status, :purchase_status, presence: true
18
19
  validates :payment_penalty, numericality: {greater_than_or_equal_to: 0, less_than_or_equal_to: 100}, allow_nil: true
19
20
 
20
21
  validates :amount_paid,
@@ -2,6 +2,7 @@ module Comee
2
2
  module Core
3
3
  class SalesOrderItem < ApplicationRecord
4
4
  before_save :calculate_total_price
5
+ after_save :update_sales_order_purchase_status, if: proc { |item| item.fully_processed? }
5
6
 
6
7
  enum processing_status: {unprocessed: 0, partially_processed: 1, fully_processed: 2}
7
8
 
@@ -27,6 +28,13 @@ module Comee
27
28
  quantity - (quantity_delivered + quantity_canceled)
28
29
  end
29
30
 
31
+ def update_sales_order_purchase_status
32
+ return unless sales_order.sales_order_items.all.all?(&:fully_processed?)
33
+
34
+ sales_order.purchase_status = SalesOrder.purchase_statuses[:processed]
35
+ sales_order.save!
36
+ end
37
+
30
38
  def self.ransackable_attributes(_auth_object = nil)
31
39
  %w[
32
40
  id
@@ -2,7 +2,7 @@ module Comee
2
2
  module Core
3
3
  class ProductSerializer < ActiveModel::Serializer
4
4
  attributes :id, :code, :name, :description, :thumbnail_image_url, :images_url, :preferred_units, :weight,
5
- :dimensions, :hs_code, :hs_description
5
+ :dimensions, :hs_code, :hs_description, :parent_id
6
6
  belongs_to :source
7
7
  belongs_to :weight_unit
8
8
  end
@@ -0,0 +1,6 @@
1
+ class AddPurchaseStatusToSalesOrderAndPurchaseRequisition < ActiveRecord::Migration[7.1]
2
+ def change
3
+ add_column :comee_core_sales_orders, :purchase_status, :integer, default: 0
4
+ add_column :comee_core_purchase_requisitions, :purchase_status, :integer, default: 0
5
+ end
6
+ end
@@ -1,5 +1,5 @@
1
1
  module Comee
2
2
  module Core
3
- VERSION = "0.2.62".freeze
3
+ VERSION = "0.2.63".freeze
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: comee_core
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.62
4
+ version: 0.2.63
5
5
  platform: ruby
6
6
  authors:
7
7
  - Henock L.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-04-24 00:00:00.000000000 Z
11
+ date: 2024-04-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: active_model_serializers
@@ -458,6 +458,7 @@ files:
458
458
  - db/migrate/20240328132713_create_comee_core_payment_orders.rb
459
459
  - db/migrate/20240328132921_create_comee_core_supplier_payments.rb
460
460
  - db/migrate/20240407083617_create_comee_core_email_settings.rb
461
+ - db/migrate/20240425121701_add_purchase_status_to_sales_order_and_purchase_requisition.rb
461
462
  - lib/comee/core.rb
462
463
  - lib/comee/core/engine.rb
463
464
  - lib/comee/core/version.rb