INSERT INTO mrp_plan_data (ware_house_id, part_no, plan_qty, site, plan_date,direction,calculation_type,plan_desc,created_by) SELECT i.WarehouseID as ware_house_id, i.PartNo as part_no, i.QtyOnHand as plan_qty, i.site as site, CONVERT(VARCHAR (10), GETDATE(), 120) as plan_date, '+' as direction, #{calculationType} as calculation_type, '库存' as plan_desc, #{otherGroup2} as created_by FROM InventoryStock i LEFT JOIN WareHouse wh on ( i.WarehouseID = wh.WarehouseID) LEFT JOIN part p ON ( p.PartNo = i.PartNo ) wh.WareHouseType_DB = #{wareHouseTypeDb} and i.PartNo = #{partNo} and p.OtherGroup2 = #{otherGroup2} and i.WarehouseID = #{wareHouseId} and i.WarehouseID = #{wareHouseId} and i.site =#{site} INSERT INTO mrp_plan_data (ware_house_id, part_no, plan_qty, site, plan_date, direction,calculation_type,plan_desc,created_by) SELECT cd.WarehouseID AS ware_house_id, cd.PartNo AS part_no, cd.ShipQty AS plan_qty, cd.site AS site, ch.DelDate AS plan_date, '+' as direction, #{calculationType} as calculation_type, '在途' as plan_desc, #{otherGroup2} as created_by FROM CODelDetail cd JOIN CODelHeader ch on (cd.DelNo = ch.DelNo) LEFT JOIN part p ON ( cd.PartNo = p.PartNo ) cd.PartNo = #{partNo} and p.OtherGroup2 = #{otherGroup2} and cd.WarehouseID = #{warehouseId} INSERT INTO mrp_plan_data (ware_house_id, part_no, plan_qty, site, plan_date, direction, calculation_type,plan_desc,created_by) SELECT ppi.ware_house_id AS ware_house_id, ppi.part_no AS part_no, ppi.average_consume_qty AS plan_qty, ppi.site AS site, #{planDate} AS plan_date, '-' AS direction, #{calculationType} as calculation_type, '日消耗' as plan_desc, #{otherGroup2} as created_by FROM part_plan_info ppi LEFT JOIN WareHouse wh on(ppi.ware_house_id = wh.WareHouseID) LEFT JOIN part p ON (ppi.part_no = p.PartNo ) wh.WareHouseType_DB = #{wareHouseTypeDb} and p.OtherGroup2 = #{otherGroup2} and site = #{site} and ppi.part_no = #{partNo} and ppi.ware_house_id = #{wareHouseId} INSERT INTO mrp_plan_data (ware_house_id, part_no, plan_qty, site, plan_date, direction, calculation_type,plan_desc,created_by) SELECT ppi.ware_house_id AS ware_house_id, ppi.part_no AS part_no, ppi.average_consume_qty * cover_days AS plan_qty, ppi.site AS site, #{planDate} AS plan_date, '-' AS direction, #{calculationType} AS calculation_type, '库存安全数' AS plan_desc, #{otherGroup2} as created_by FROM part_plan_info ppi LEFT JOIN WareHouse wh on(ppi.ware_house_id = wh.WareHouseID) LEFT JOIN part p ON (ppi.part_no = p.PartNo ) wh.WareHouseType_DB = #{wareHouseTypeDb} and p.OtherGroup2 = #{otherGroup2} and part_no = #{partNo} and ware_house_id = #{wareHouseId} and wh.site =#{site} INSERT INTO mrp_plan_data (ware_house_id, part_no, plan_qty, site, plan_date, direction, calculation_type, plan_desc,created_by) SELECT ware_house_id AS ware_house_id, part_no AS part_no, MAX(qty_required) AS plan_qty, site AS site, MIN(need_date) AS plan_date, '-' AS direction, #{calculationType} AS calculation_type, '备货' AS plan_desc, #{otherGroup2} as created_by FROM delivery_requisition d status = '创建' and part_no = #{partNo} and site =#{site} GROUP BY ware_house_id, part_no, site, created_by, status, site INSERT INTO shop_order_requisition ( site, part_no, need_date, status, qty_required, created_by, created_date ) SELECT site, part_no, MIN(plan_date) AS need_date, '创建' AS status, - SUM ( CASE WHEN direction = '+' THEN + plan_qty ELSE - plan_qty END ) AS qty_required, 'admin' AS created_by, GETDATE( ) AS created_date FROM mrp_plan_data calculation_type = 'MPS' AND plan_desc != '建议生产' and part_no = #{partNo} GROUP BY part_no, site HAVING SUM ( CASE WHEN direction = '+' THEN + plan_qty ELSE - plan_qty END ) 0 INSERT INTO mrp_plan_data (ware_house_id, part_no, plan_qty, site, plan_date, direction, calculation_type, plan_desc, created_by) SELECT ware_house_id, part_no, -SUM(CASE WHEN direction = '+' THEN + plan_qty ELSE - plan_qty END) AS qty_required, site, #{planDate} AS plan_date, '+' direction, #{calculationType} calculation_type, '临时补货' plan_desc, #{otherGroup2} as created_by FROM mrp_plan_data where plan_date #{planDate} and calculation_type = #{calculationType} and site = #{site} GROUP BY ware_house_id, part_no, site HAVING SUM(CASE WHEN direction = '+' THEN + plan_qty ELSE - plan_qty END) 0 INSERT INTO delivery_requisition (qty_required, ware_house_id, part_no, need_date, site, status, created_date, created_by) SELECT SUM(plan_qty) AS qty_required, ware_house_id, part_no, MIN(plan_date) AS need_date, site, '创建' status, CONVERT(VARCHAR (10), GETDATE(), 120) created_date, #{createdBy} created_by FROM mrp_plan_data plan_desc = #{planDesc} and ware_house_id =#{wareHouseId} and part_no = #{partNo} GROUP BY ware_house_id, part_no, site INSERT INTO mrp_plan_data (ware_house_id, part_no, plan_qty, site, plan_date, direction, calculation_type, plan_desc,created_by) SELECT ware_house_id, part_no, SUM(plan_qty) AS plan_qty, site, MIN(plan_date) AS plan_date, '+' AS direction, 'MS' calculation_type, '建议备货' plan_desc, #{otherGroup2} as created_by FROM mrp_plan_data plan_desc = #{planDesc} and site = #{site} and ware_house_id =#{wareHouseId} and part_no = #{partNo} GROUP BY ware_house_id, part_no, site INSERT INTO mrp_plan_data ( part_no, plan_qty, site, plan_date, direction, calculation_type, plan_desc,created_by ) SELECT PartNo AS part_no, ISNULL(LotSize,0) -ISNULL(FinishedQty, 0) AS plan_qty, NeedDate plan_date, Site AS site, '+' AS direction, 'MPS' AS calculation_type, '库存' AS plan_desc, #{otherGroup2} as created_by FROM ShopOrder Status != '已取消' AND Status != '已结束' AND NeedDate #{planDate} and Site = #{site} and PartNo = #{partNo} INSERT INTO mrp_plan_data ( part_no, plan_qty, site, plan_date, direction, calculation_type, plan_desc,created_by ) SELECT part_no, - SUM ( CASE WHEN direction = '+' THEN + plan_qty ELSE - plan_qty END ) AS plan_qty, site, MIN(plan_date), '+' AS direction, 'MPS' AS calculation_type, '建议生产' AS plan_desc, #{otherGroup2} as created_by FROM mrp_plan_data calculation_type = 'MPS' and plan_desc != '建议生产' and part_no = #{partNo} GROUP BY part_no, site HAVING SUM ( CASE WHEN direction = '+' THEN + plan_qty ELSE - plan_qty END ) 0 INSERT INTO mrp_plan_data ( part_no, plan_qty, site,ware_house_id, plan_date, direction, calculation_type, plan_desc,created_by ) VALUES ( #{item.partNo}, #{item.planQty}, #{item.site}, #{item.wareHouseId}, #{item.planDate}, #{item.direction}, #{item.calculationType}, #{item.planDesc}, #{item.createdBy} ) UPDATE mrp_plan_data SET plan_qty = #{averageConsumeQty}, direction = '-', calculation_type = 'MS', plan_desc = '活动消耗' WHERE plan_date =]]> #{startDate} AND plan_date #{finishDate} AND ware_house_id = #{wareHouseId} AND part_no = #{partNo} AND plan_desc = '日消耗' AND site = #{site} DELETE FROM mrp_plan_data and created_by =#{otherGroup2} and site =#{site} and part_no = #{partNo} and ware_house_id = #{wareHouseId} and id = #{id} and calculation_type = #{calculationType} DELETE FROM delivery_requisition status = '创建' and site =#{site} and created_by =#{otherGroup2} and part_no = #{partNo} and ware_house_id = #{wareHouseId} DELETE FROM shop_order_requisition status = '创建' AND part_no = #{partNo} and site =#{site} DELETE FROM mrp_plan_data plan_desc = '临时补货' and site =#{site} and created_by =#{otherGroup2} and part_no = #{partNo} and ware_house_id = #{wareHouseId}