Hi,
I don't see an easy solution without any coding.
The TaxCloud plugin has the ability to override the shipping address by his origin address when the shipping address override setting is turned on. But that's when you're shipping from one place and you want to allow customers to pick up their goods there.
The simplest would be to have one shipping method per warehouse with the shipping address override setting activated, and change the code:
if(@$this->plugin_options['use_origin_address_when_override']){
$address = new stdClass();
$address->address_street = $this->plugin_options['origin_address1'];
$address->address_street2 = $this->plugin_options['origin_address2'];
$address->address_city = $this->plugin_options['origin_city'];
$address->address_state = new stdClass();
$address->address_state->zone_code_3 = $this->plugin_options['origin_state'];
$address->address_post_code = $this->plugin_options['origin_zip5'].$this->plugin_options['origin_zip4'];
return $address;
}
in plugins/hikashop/taxcloud/taxcloud.php in order to set the address you want based on what is in $currentShipping. A developer will be able to do that for you quite easily.