-- 
-- 在庫一覧表(明細)
-- 
CREATE OR REPLACE VIEW v_inventory_list_detail
AS 

SELECT 
    inventory_lot_log_details.id,   -- ID
    CASE
        WHEN inventory_lot_log_details.transaction_type = 1 THEN '入庫'
        WHEN inventory_lot_log_details.transaction_type = 2 THEN '売上出庫'
        WHEN inventory_lot_log_details.transaction_type = 3 THEN '移動出庫'
        WHEN inventory_lot_log_details.transaction_type = 4 THEN 'セット品組立'
        WHEN inventory_lot_log_details.transaction_type = 5 THEN 'セット品バラシ'
        ELSE ''
    END AS 'transaction_type',  -- 種類
    products.product_code,  -- 商品コード
    products.product_name,  -- 商品名
    CASE
        WHEN inventory_lot_log_details.quantity > 0 THEN DATE_FORMAT(inventory_lot_log_details.transaction_date, '%Y/%m/%d')
        ELSE ''
    END AS 'receiving_date',  -- 入庫日　quantity>0の場合に表示
    CASE
        WHEN inventory_lot_log_details.quantity > 0 THEN inventory_lot_log_details.quantity
        ELSE 0
    END AS 'receiving_quantity',  -- 入庫数量　quantity>0の場合に表示
    CASE
        WHEN inventory_lot_log_details.quantity < 0 THEN DATE_FORMAT(inventory_lot_log_details.transaction_date, '%Y/%m/%d')
        ELSE ''
    END AS 'shipping_date',  -- 出庫日　quantity<0の場合に表示
    CASE
        WHEN inventory_lot_log_details.quantity < 0 THEN ABS(inventory_lot_log_details.quantity)
        ELSE 0
    END AS 'shipping_quantity',  -- 出庫数量　quantity<0の場合に表示
    warehouses.warehouse_name,  -- 倉庫
    DATE_FORMAT(inventory_lot_log_details.transaction_date, '%Y/%m') AS 'transaction_date_ym',   -- 年月
    DATE_FORMAT(inventory_lot_log_details.transaction_date, '%Y') AS 'transaction_date_y', -- 年
    DATE_FORMAT(inventory_lot_log_details.transaction_date, '%Y/%m/%d') AS 'transaction_date_ymd', -- 年月日 
    DATE_FORMAT(inventory_lot_log_details.updated_at, '%Y/%m/%d %H:%i:%s') AS 'updated_at', -- 更新日時
    inventory_lot_log_details.product_id,  -- 商品ID
    inventory_lot_log_details.warehouse_id  -- 倉庫ID

-- ｜ロット在庫履歴詳細
FROM inventory_lot_log_details

-- ｜商品マスタ
LEFT JOIN products ON inventory_lot_log_details.product_id = products.id

-- ｜場所マスタ
LEFT JOIN warehouses ON inventory_lot_log_details.warehouse_id = warehouses.id
