After lots of debugging, finally, I fixed it via event-observer.
So just created a separated custom module & used "catalog_product_save_before" event.
FilePath:- Namespace/Module/Observer/Tierpriceupdate.php
Here is the observer code:-
public function execute(\Magento\Framework\Event\Observer $observer)
{
$_product = $observer->getProduct();
//Get Migrated attribute set id
$att_set_id=$_product->getAttributeSetId() ;
// Only fot "Default Migrated" attribute set
if($att_set_id==11){
$product_id=$_product->getId() ;
// Sql Connection :-
$objectManager = \Magento\Framework\App\ObjectManager::getInstance(); // Instance of object manager
$resource = $objectManager->get('Magento\Framework\App\ResourceConnection');
$connection = $resource->getConnection();
$tier_prices=$_product->getData('tier_price') ;
// echo "<pre>" ; print_r($tier_prices) ; exit;
foreach($tier_prices as $tier_price){
$price_qty = $tier_price['price_qty'];
$price = $tier_price['price'];
$website_id = $tier_price['website_id'];
$all_groups=0;
// When Customer Group As All group
if($tier_price['cust_group']==32000){
$tier_price['cust_group']=0;
$all_groups=1;
}
$cust_group =$tier_price['cust_group'];
if(isset($tier_price['price_id']) && !empty($tier_price['price_id'])){
$price_id =$tier_price['price_id'];
if(empty($tier_price['delete']) && !isset($tier_price['delete'])){
// Update table catalog_product_entity_tier_price
$update_table = "UPDATE `catalog_product_entity_tier_price` SET `all_groups`='$all_groups', `customer_group_id`='$cust_group', `qty`='$price_qty', `value`='$price', `website_id`='$website_id' WHERE `value_id`='$price_id'" ;
// echo $update_table ; exit;
$connection->query($update_table);
} else{
// Delete table row catalog_product_entity_tier_price
$delete_table="DELETE FROM `catalog_product_entity_tier_price` WHERE `value_id` = '$price_id'" ;
// echo $delete_table ; exit;
$connection->query($delete_table);
}
} else{
// Insert INto catalog_product_entity_tier_price
$insert_table="INSERT INTO `catalog_product_entity_tier_price` (`entity_id`, `all_groups`, `customer_group_id`, `qty`, `value`, `website_id`) VALUES ('$product_id', '$all_groups', '$cust_group', '$price_qty', '$price', '$website_id')";
$connection->query($insert_table);
}
}
}
}