This commit is contained in:
Paul Trowbridge 2025-07-29 03:45:28 -04:00
parent 35e7ce0f99
commit d31c557862

View File

@ -1,87 +1,9 @@
-- CREATE TABLE IF NOT EXISTS pricequote.price_queue (
-- id BIGINT GENERATED ALWAYS AS IDENTITY PRIMARY KEY
-- ,bill TEXT
-- ,ship TEXT
-- ,part TEXT
-- ,stlc TEXT
-- ,v1ds TEXT
-- ,vol NUMERIC
-- ,chan TEXT
-- ,tier TEXT
-- ,pltq NUMERIC
-- ,price NUMERIC
-- ,expl JSONB
-- );
DELETE FROM pricequote.price_queue;
INSERT INTO pricequote.price_queue (bill, ship, part, stlc, v1ds, vol) SELECT 'GRIF0001','GRIF0001','XNS0T1G3G18B096','XNS0T1G3','v1:L..PLT..',9600;
SELECT * FROM pricequote.process_queue()
-- --------------------------------------------------------------------------------
-- ---------------------set channel, tier, & pallet quantitiy----------------------
-- --------------------------------------------------------------------------------
-- UPDATE
-- pricequote.price_queue s
-- SET
-- chan = cr.chan,
-- tier = cr.tier,
-- pltq = cr.mpck
-- FROM (
-- SELECT
-- q.bill
-- ,q.ship
-- ,q.part
-- ,i.mpck
-- ,CASE SUBSTRING(bc.cclass,2,3)
-- --if the bill to class is ditsributor, then it's either warehouse or drop
-- WHEN 'DIS' THEN
-- --if the ship-to is a different name than the bill-to then it's drop, otherwise it's warehouse
-- CASE SUBSTRING(sc.cclass,2,3)
-- WHEN 'DIS' THEN 'WHS'
-- ELSE 'DRP'
-- END
-- --CASE WHEN RTRIM(SUBSTR(LTRIM(SC.BVADR7)||SC.BVNAME,1,30)) = RTRIM(SUBSTR(LTRIM(BC.BVADR7)||BC.BVNAME,1,30)) THEN 'DIS' ELSE 'DRP' END
-- --everything else does not involve a distributor and is considered direct
-- ELSE 'DIR'
-- END AS chan
-- ,CASE substring(bc.cclass,2,3)
-- WHEN 'DIR' THEN bc.tier
-- -------------some orders do not have a ship-to---------------
-- ELSE COALESCE(sc.tier,bc.tier)
-- END AS tier
-- FROM
-- pricequote.price_queue q
-- LEFT OUTER JOIN rlarp.cust bc ON
-- bc.code = q.bill
-- LEFT OUTER JOIN rlarp.cust sc ON
-- sc.code = q.ship
-- LEFT OUTER JOIN "CMS.CUSLG".itemm i ON
-- i.item = q.part
-- ) cr
-- WHERE
-- cr.bill = s.bill
-- AND COALESCE(cr.ship, '') = COALESCE(s.ship, '');
--
-- UPDATE
-- pricequote.price_queue q
-- SET
-- price = tp.price
-- ,expl = jsonb_build_object(
-- 'source', 'target price',
-- 'calculated_pallets', FLOOR(q.vol / NULLIF(q.pltq, 0))::INT,
-- 'exact_pallets', ROUND(q.vol / NULLIF(q.pltq, 0),5),
-- 'volume range',tp.vol
-- )
-- FROM
-- pricequote.target_prices tp
-- WHERE
-- q.stlc = tp.stlc
-- AND q.v1ds = tp.ds
-- AND q.chan = tp.chan
-- AND q.tier = tp.tier
-- AND tp.vol @> FLOOR(q.vol/q.pltq)::INT;
--
-- SELECT * FROM pricequote.price_queue
SELECT * FROM
pricequote.single_price_call(
'GRIF0001' ,
'GRIF0001' ,
'XNS0T1G3G18B096' ,
'XNS0T1G3',
'v1:B.L.PLT..',
9600
)