Advertisement
LovelessIsma

Cart detail 2

Nov 19th, 2019
149
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MySQL 1.64 KB | None | 0 0
  1.  
  2.  
  3. INSERT INTO ta_tabla (ta_campo, ta_codigo, ta_denominacion, ta_colorleyenda, ta_orden, Activo, IdUsuarioReg, FechaReg, IdUsuarioAct, FechaAct)
  4. VALUES ('StateCart', '01', 'Pending', '#FCDE01', 1, 1, 1, NOW(), 1, NOW());
  5.  
  6. INSERT INTO ta_tabla (ta_campo, ta_codigo, ta_denominacion, ta_colorleyenda, ta_orden, Activo, IdUsuarioReg, FechaReg, IdUsuarioAct, FechaAct)
  7. VALUES ('StateCart', '02', 'Completed', '#5BDE73', 1, 1, 1, NOW(), 1, NOW());
  8.  
  9. INSERT INTO ta_tabla (ta_campo, ta_codigo, ta_denominacion, ta_colorleyenda, ta_orden, Activo, IdUsuarioReg, FechaReg, IdUsuarioAct, FechaAct)
  10. VALUES ('StateCart', '03', 'Aborted', '#FF6A42', 1, 1, 1, NOW(), 1, NOW());
  11.  
  12.  
  13.  
  14. DROP PROCEDURE IF EXISTS pa_cartDetail_register_once;
  15. DELIMITER //
  16. CREATE PROCEDURE pa_cartDetail_register_once
  17. (
  18.     IN userId INT,
  19.     IN createDateAt DATETIME,
  20.     IN productId INT,
  21.     IN price DECIMAL(10,2),
  22.     IN quantity INT,
  23.     IN amount DECIMAL(10, 2)
  24. )
  25. BEGIN
  26.     DECLARE cartId INT;
  27.    
  28.     SET cartId = 0;
  29.    
  30.     SELECT COALESCE(CartId, 0) INTO cartId FROM Cart WHERE UserId = userId AND StateCart = '01' AND Active = 1;
  31.    
  32.     IF cartId > 0 THEN
  33.         UPDATE Cart SET TotalAmount = TotalAmount + amount, UpdatedAt = NOW() WHERE CartId = cartId;
  34.         SET cartId = LAST_INSERT_ID();
  35.     ELSE
  36.         INSERT INTO Cart (UserId, CreatedAt, StateCart, TotalAmount, UpdatedAt, Active) VALUES (userId, createdAt, '01', amount, NOW(), 1);
  37.         SET cartId = LAST_INSERT_ID();
  38.     END IF;
  39.    
  40.     INSERT INTO DetailsCart (CartId, ProductId, Price, Quantity, Amount, UpdatedAt, Active) VALUES (cartId, productId, price, quantity, amount, NOW(), 1);
  41. END//
  42. DELIMITER ;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement