Advertisement
Guest User

Untitled

a guest
Feb 26th, 2020
342
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MySQL 7.23 KB | None | 0 0
  1. CREATE DEFINER=`root`@`%` PROCEDURE `wavin_db_dev`.`order_temporary_view`(IN `order_id` INT(11) , IN `action_data` VARCHAR(191), OUT status VARCHAR(191) )
  2. BEGIN
  3.         DECLARE done INT DEFAULT FALSE;
  4.  
  5.  
  6.         DECLARE ds_status,ds_creator,ds_so_ref_number,ds_code ,ds_stores_code_parent ,ds_stores_name,ds_agent_name, ds_agent_email,ds_g_lat,ds_g_lng ,ds_stores_toko_name ,ds_stores_toko_email ,ds_stores_category ,ds_brand_name, ds_notes ,ds_internal_comment ,ds_stores_address,ds_stores_village_id ,ds_stores_district_id,ds_stores_city_id, ds_stores_province_id,ds_products_name,ds_products_sku VARCHAR(255);
  7.  
  8.  
  9.         DECLARE ds_date, ds_so_ref_date VARCHAR(20);
  10.  
  11.  
  12.         DECLARE ds_id, ds_salesman_id, ds_user_id_created, ds_user_id_updated, ds_order_reason_id, ds_order_detail_id, ds_order_detail_last_sent_qty, ds_stores_parent_id, ds_brand_id, ds_agent_id, ds_products_id, ds_categories_id, ds_is_detected INT;
  13.  
  14.  
  15.         DECLARE ds_total_amount, ds_order_detail_price_at_time  DECIMAL(15,4) DEFAULT 0;
  16.  
  17.  
  18.         DECLARE ds_created_at, ds_updated_at, ds_deleted_at, ds_order_detail_updated_at timestamp;
  19.  
  20.  
  21.  
  22.         DECLARE curdata CURSOR FOR select a.id, a.status, a.creator, a.so_ref_number, a.code, a.date, a.salesman_id, a.total_amount, a.notes , a.internal_comment, a.so_ref_date,a.g_lat,a.g_lng,a.created_at, a.updated_at, a.user_id_created, a.user_id_updated,  a.deleted_at, a.order_reason_id,od.id as order_detail_id, od.last_sent_qty,od.price_at_time,od.updated_at as updated_at_detail,f.store_code as store_code_parent, f.name as stores_name, f.address, f.village_id, f.district_id, f.city_id, f.province_id,f.stores_category , f.parent_id , f.name as TokoName, f.email as TokoEmail, br.id as BrandID, br.name as BrandName, h.id as AgentID,h.name as AgentName,h.email as AgentEmail, pr.id as products_id, pr.productName as products_name, pr.SKU as  products_sku, cat.id as  categories_id, IF(a.deleted_at IS NULL, 0 , 1) as deleted_at_order  FROM orders a LEFT JOIN stores f ON  a.store_id=f.id LEFT JOIN agents h ON a.agent_id = h.id LEFT JOIN order_detail od ON od.order_id = a.id LEFT JOIN product_agent pa ON pa.id = od.product_id LEFT JOIN products pr ON pr.id = pa.master_product_id LEFT JOIN categories cat ON cat.id = pr.category_id LEFT JOIN brands br ON cat.brand_id = br.id where a.id=order_id;
  23.  
  24.         DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
  25.         IF NOT EXISTS (SELECT id FROM orders WHERE id=order_id) THEN
  26.         set status = "No Data Order";
  27.         ELSE
  28.         IF action_data = "INSERT" THEN
  29.         INSERT INTO order_detail_view_grid(id,status,creator,so_ref_number,code,date,salesman_id,total_amount,notes,internal_comment,so_ref_date,g_lat,g_lng,user_id_created,user_id_updated,created_at,updated_at,deleted_at,order_reason_id,order_detail_id,order_detail_last_sent_qty,order_detail_price_at_time,order_detail_updated_at,stores_code_parent,stores_name,stores_address,stores_village_id,stores_district_id,stores_city_id,stores_province_id,stores_category,stores_parent_id,stores_toko_name,stores_toko_email,brand_id,brand_name,agent_id,agent_name,agent_email, products_id, products_name, products_sku, categories_id, is_detected)
  30.         select  a.id, a.status, a.creator, a.so_ref_number, a.code, a.date, a.salesman_id, a.total_amount, a.notes , a.internal_comment, a.so_ref_date,a.g_lat,a.g_lng, a.user_id_created, a.user_id_updated, a.created_at, a.updated_at,  a.deleted_at, a.order_reason_id,od.id as order_detail_id, od.last_sent_qty,od.price_at_time,od.updated_at as updated_at_detail,f.store_code as store_code_parent, f.name as stores_name, f.address, f.village_id, f.district_id, f.city_id, f.province_id,f.stores_category , f.parent_id , f.name as TokoName, f.email as TokoEmail, br.id as BrandID, br.name as BrandName, h.id as AgentID,h.name as AgentName,h.email as AgentEmail, pr.id as products_id,
  31.         pr.productName as products_name,
  32.         pr.SKU as  products_sku,
  33.         cat.id as  categories_id,
  34.         IF(a.deleted_at IS NULL, 0 , 1) as deleted_at_order
  35.         FROM orders a
  36.         LEFT JOIN stores f ON  a.store_id=f.id
  37.         LEFT JOIN agents h ON a.agent_id = h.id
  38.         LEFT JOIN order_detail od ON od.order_id = a.id
  39.         LEFT JOIN product_agent pa ON pa.id = od.product_id
  40.         LEFT JOIN products pr ON pr.id = pa.master_product_id
  41.         LEFT JOIN categories cat ON cat.id = pr.category_id
  42.         LEFT JOIN brands br ON cat.brand_id = br.id
  43.         where a.id=order_id;
  44.         set status = "Success Create";
  45.         ELSE
  46.         OPEN curdata;
  47.         read_loop: LOOP
  48.         FETCH curdata INTO ds_id,ds_status,ds_creator,ds_so_ref_number,ds_code,ds_date,ds_salesman_id,ds_total_amount,ds_notes,ds_internal_comment,ds_so_ref_date,ds_g_lat,ds_g_lng,ds_user_id_created,ds_user_id_updated,ds_created_at,ds_updated_at,ds_deleted_at,ds_order_reason_id,ds_order_detail_id,ds_order_detail_last_sent_qty,ds_order_detail_price_at_time,ds_order_detail_updated_at,ds_stores_code_parent,ds_stores_name,ds_stores_address,ds_stores_village_id,ds_stores_district_id,ds_stores_city_id,ds_stores_province_id,ds_stores_category,ds_stores_parent_id,ds_stores_toko_name,ds_stores_toko_email,ds_brand_id,ds_brand_name,ds_agent_id,ds_agent_name,ds_agent_email,ds_products_id,ds_products_name,ds_products_sku,ds_categories_id,ds_is_detected;
  49.         IF done THEN
  50.         LEAVE read_loop;
  51.         END IF;
  52.         UPDATE order_detail_view_grid
  53.         SET
  54.         status=ds_status,
  55.         creator=ds_creator,
  56.         so_ref_number=ds_so_ref_number,
  57.         code=ds_code,
  58.         date=ds_date,
  59.         salesman_id=ds_salesman_id,
  60.         total_amount=ds_total_amount,
  61.         notes=ds_notes,
  62.         internal_comment=ds_internal_comment,
  63.         so_ref_date=ds_so_ref_date,
  64.         g_lat=ds_g_lat,
  65.         g_lng=ds_g_lng,
  66.         user_id_created=ds_user_id_created,
  67.         user_id_updated=ds_user_id_updated,
  68.         created_at=ds_created_at,
  69.         updated_at=ds_updated_at,
  70.         deleted_at=ds_deleted_at,
  71.         order_reason_id=ds_order_reason_id,
  72.         order_detail_last_sent_qty=ds_order_detail_last_sent_qty,
  73.         order_detail_price_at_time=ds_order_detail_price_at_time,
  74.         order_detail_updated_at=ds_order_detail_updated_at,
  75.         stores_code_parent=ds_stores_code_parent,
  76.         stores_name=ds_stores_name,
  77.         stores_address=ds_stores_address,
  78.         stores_village_id=ds_stores_village_id,
  79.         stores_district_id=ds_stores_district_id,
  80.         stores_city_id=ds_stores_city_id,
  81.         stores_province_id=ds_stores_province_id,
  82.         stores_category=ds_stores_category,
  83.         stores_parent_id=ds_stores_parent_id,
  84.         stores_toko_name=ds_stores_toko_name,
  85.         stores_toko_email=ds_stores_toko_email,
  86.         brand_id=ds_brand_id,
  87.         brand_name=ds_brand_name,
  88.         agent_id=ds_agent_id,
  89.         agent_name=ds_agent_name,
  90.         agent_email=ds_agent_email,
  91.         products_id=ds_products_id,
  92.         products_name=ds_products_name,
  93.         products_sku=ds_products_sku,
  94.         categories_id=ds_categories_id,
  95.         is_detected=ds_is_detected
  96.         WHERE id=ds_id AND order_detail_id=ds_order_detail_id;
  97.         END LOOP;
  98.         CLOSE curdata;
  99.         set status = "Success Update";  
  100.         END IF;
  101.         END IF;
  102.         SELECT status;
  103.         END
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement