freight_kit 0.1.20 → 0.1.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (434) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +0 -2
  3. data/README.md +1 -2
  4. data/Rakefile +6 -0
  5. data/VERSION +1 -1
  6. data/configuration/locations/amazon_warehouses.yml +3330 -0
  7. data/freight_kit.gemspec +13 -13
  8. data/lib/freight_kit/address_normalizer.rb +26 -0
  9. data/lib/freight_kit/amazon_warehouse.rb +33 -0
  10. data/lib/freight_kit/api_clients/soap_client.rb +7 -9
  11. data/lib/freight_kit/carrier.rb +250 -303
  12. data/lib/freight_kit/carriers/a1_express.rb +25 -0
  13. data/lib/freight_kit/carriers/a_duie_pyle.rb +30 -0
  14. data/lib/freight_kit/carriers/aaa_cooper.rb +11 -0
  15. data/lib/freight_kit/carriers/aaa_expedited_services.rb +10 -0
  16. data/lib/freight_kit/carriers/ab_brothers_usa_inc.rb +12 -0
  17. data/lib/freight_kit/carriers/aberdeen_express_inc.rb +28 -0
  18. data/lib/freight_kit/carriers/abf_freight_system.rb +492 -0
  19. data/lib/freight_kit/carriers/access_transport.rb +10 -0
  20. data/lib/freight_kit/carriers/action_express.rb +10 -0
  21. data/lib/freight_kit/carriers/adams_and_companies.rb +10 -0
  22. data/lib/freight_kit/carriers/advance_distribution.rb +28 -0
  23. data/lib/freight_kit/carriers/alcon_transport.rb +10 -0
  24. data/lib/freight_kit/carriers/all_freight.rb +10 -0
  25. data/lib/freight_kit/carriers/alliance_transportation_group.rb +10 -0
  26. data/lib/freight_kit/carriers/allstate_transport.rb +10 -0
  27. data/lib/freight_kit/carriers/aloha_freight_forwarders.rb +35 -0
  28. data/lib/freight_kit/carriers/amado_trucking.rb +35 -0
  29. data/lib/freight_kit/carriers/american_fast_freight.rb +28 -0
  30. data/lib/freight_kit/carriers/amigos_service_transportation.rb +10 -0
  31. data/lib/freight_kit/carriers/anderson_towing_and_transport.rb +10 -0
  32. data/lib/freight_kit/carriers/apex_transporting.rb +10 -0
  33. data/lib/freight_kit/carriers/archer_cargo.rb +35 -0
  34. data/lib/freight_kit/carriers/armstrong_transport_group.rb +10 -0
  35. data/lib/freight_kit/carriers/autobahn_logistics.rb +10 -0
  36. data/lib/freight_kit/carriers/averitt_express.rb +30 -0
  37. data/lib/freight_kit/carriers/ba_transportation.rb +10 -0
  38. data/lib/freight_kit/carriers/balkin_express.rb +10 -0
  39. data/lib/freight_kit/carriers/bay_area_express.rb +10 -0
  40. data/lib/freight_kit/carriers/bc_freightways.rb +11 -0
  41. data/lib/freight_kit/carriers/benjamin_best_freight_inc.rb +37 -0
  42. data/lib/freight_kit/carriers/bennett_trucking.rb +10 -0
  43. data/lib/freight_kit/carriers/best_overnite_express.rb +78 -0
  44. data/lib/freight_kit/carriers/best_trucking.rb +10 -0
  45. data/lib/freight_kit/carriers/bestway_transport.rb +10 -0
  46. data/lib/freight_kit/carriers/bryan_systems.rb +10 -0
  47. data/lib/freight_kit/carriers/c_and_w_express.rb +10 -0
  48. data/lib/freight_kit/carriers/campbell_trucking.rb +10 -0
  49. data/lib/freight_kit/carriers/carde_transportation.rb +10 -0
  50. data/lib/freight_kit/carriers/cardinal_logistics.rb +28 -0
  51. data/lib/freight_kit/carriers/cdc_transport.rb +10 -0
  52. data/lib/freight_kit/carriers/cdo_express_diversified.rb +10 -0
  53. data/lib/freight_kit/carriers/cedar_supply_trucking.rb +10 -0
  54. data/lib/freight_kit/carriers/central_freight_lines.rb +12 -0
  55. data/lib/freight_kit/carriers/central_transport.rb +12 -0
  56. data/lib/freight_kit/carriers/chicago_suburban_express.rb +28 -0
  57. data/lib/freight_kit/carriers/city_logistics.rb +11 -0
  58. data/lib/freight_kit/carriers/clear_lane_freight_systems.rb +483 -0
  59. data/lib/freight_kit/carriers/cleopatra_trucking.rb +10 -0
  60. data/lib/freight_kit/carriers/clifford_transportation.rb +10 -0
  61. data/lib/freight_kit/carriers/cms_domestic.rb +25 -0
  62. data/lib/freight_kit/carriers/cnd_logistics.rb +10 -0
  63. data/lib/freight_kit/carriers/coast_to_coast_transport.rb +27 -0
  64. data/lib/freight_kit/carriers/countrywide_carriers.rb +10 -0
  65. data/lib/freight_kit/carriers/cpl_express.rb +35 -0
  66. data/lib/freight_kit/carriers/crosby_trucking_service.rb +29 -0
  67. data/lib/freight_kit/carriers/cross_country_freight_solutions.rb +419 -0
  68. data/lib/freight_kit/carriers/crowley.rb +10 -0
  69. data/lib/freight_kit/carriers/csa_transportation.rb +40 -0
  70. data/lib/freight_kit/carriers/csx_transportation.rb +40 -0
  71. data/lib/freight_kit/carriers/custom_global_logistics.rb +14 -0
  72. data/lib/freight_kit/carriers/d_and_a_transport.rb +10 -0
  73. data/lib/freight_kit/carriers/dak_transport.rb +10 -0
  74. data/lib/freight_kit/carriers/dash_courier_and_logistics_north_carolina.rb +10 -0
  75. data/lib/freight_kit/carriers/daylight_transport.rb +29 -0
  76. data/lib/freight_kit/carriers/dayton_freight_lines.rb +30 -0
  77. data/lib/freight_kit/carriers/dbr_logistics.rb +10 -0
  78. data/lib/freight_kit/carriers/deep_south_freight.rb +27 -0
  79. data/lib/freight_kit/carriers/delta_express.rb +10 -0
  80. data/lib/freight_kit/carriers/delta_transport.rb +10 -0
  81. data/lib/freight_kit/carriers/delta_trucking_logistics.rb +10 -0
  82. data/lib/freight_kit/carriers/demco_express.rb +10 -0
  83. data/lib/freight_kit/carriers/dependable_global_express.rb +10 -0
  84. data/lib/freight_kit/carriers/dependable_hawaiian_express.rb +24 -0
  85. data/lib/freight_kit/carriers/dependable_highway_express.rb +585 -0
  86. data/lib/freight_kit/carriers/desert_coastal_transport.rb +10 -0
  87. data/lib/freight_kit/carriers/dhl.rb +11 -0
  88. data/lib/freight_kit/carriers/diamond_line_delivery.rb +174 -0
  89. data/lib/freight_kit/carriers/ding_tai_trucking.rb +10 -0
  90. data/lib/freight_kit/carriers/diversified_transfer_and_storage.rb +29 -0
  91. data/lib/freight_kit/carriers/dohrn_transfer_company.rb +30 -0
  92. data/lib/freight_kit/carriers/dot_line_transportation.rb +29 -0
  93. data/lib/freight_kit/carriers/drt_transportation.rb +13 -0
  94. data/lib/freight_kit/carriers/dugan_truck_line.rb +29 -0
  95. data/lib/freight_kit/carriers/dupont.rb +10 -0
  96. data/lib/freight_kit/carriers/e_transport_carriers.rb +29 -0
  97. data/lib/freight_kit/carriers/echo_global_logistics.rb +13 -0
  98. data/lib/freight_kit/carriers/ecklund_logistics.rb +10 -0
  99. data/lib/freight_kit/carriers/el_emplumado_transport.rb +10 -0
  100. data/lib/freight_kit/carriers/elite_carriers.rb +28 -0
  101. data/lib/freight_kit/carriers/emerald_express.rb +10 -0
  102. data/lib/freight_kit/carriers/era_transport.rb +10 -0
  103. data/lib/freight_kit/carriers/estes_express_lines.rb +25 -0
  104. data/lib/freight_kit/carriers/euro_kam.rb +28 -0
  105. data/lib/freight_kit/carriers/ew_riverside_trucking.rb +10 -0
  106. data/lib/freight_kit/carriers/express_2000_inc.rb +12 -0
  107. data/lib/freight_kit/carriers/express_services_international.rb +10 -0
  108. data/lib/freight_kit/carriers/f_and_a_express.rb +27 -0
  109. data/lib/freight_kit/carriers/fairmont_logistics.rb +13 -0
  110. data/lib/freight_kit/carriers/fargo_cargo.rb +10 -0
  111. data/lib/freight_kit/carriers/fast_freight_transportation.rb +10 -0
  112. data/lib/freight_kit/carriers/fast_load_transport.rb +10 -0
  113. data/lib/freight_kit/carriers/fed_ex_express.rb +30 -0
  114. data/lib/freight_kit/carriers/fed_ex_ground.rb +24 -0
  115. data/lib/freight_kit/carriers/fed_ex_ltl_economy.rb +11 -0
  116. data/lib/freight_kit/carriers/fed_ex_ltl_priority.rb +11 -0
  117. data/lib/freight_kit/carriers/first_trucking_express.rb +10 -0
  118. data/lib/freight_kit/carriers/flash_trucking.rb +10 -0
  119. data/lib/freight_kit/carriers/fort_transportation_and_service_company_inc.rb +37 -0
  120. data/lib/freight_kit/carriers/forward_air.rb +789 -0
  121. data/lib/freight_kit/carriers/frahtex.rb +10 -0
  122. data/lib/freight_kit/carriers/frozen_food_express.rb +10 -0
  123. data/lib/freight_kit/carriers/gholia_bros_trucking.rb +36 -0
  124. data/lib/freight_kit/carriers/global_cargo.rb +10 -0
  125. data/lib/freight_kit/carriers/global_logistics_and_transportation.rb +10 -0
  126. data/lib/freight_kit/carriers/gls_freight.rb +32 -0
  127. data/lib/freight_kit/carriers/go_trucking_services.rb +10 -0
  128. data/lib/freight_kit/carriers/gold_eagle_transportation.rb +11 -0
  129. data/lib/freight_kit/carriers/golden_drop_trucking.rb +10 -0
  130. data/lib/freight_kit/carriers/gonzalez_transportation.rb +10 -0
  131. data/lib/freight_kit/carriers/gps_transport.rb +10 -0
  132. data/lib/freight_kit/carriers/greene_enterprise.rb +10 -0
  133. data/lib/freight_kit/carriers/gsa_international.rb +10 -0
  134. data/lib/freight_kit/carriers/gsp_express.rb +24 -0
  135. data/lib/freight_kit/carriers/gsv_transportation.rb +10 -0
  136. data/lib/freight_kit/carriers/gta_transportation.rb +10 -0
  137. data/lib/freight_kit/carriers/guam_freight_services.rb +10 -0
  138. data/lib/freight_kit/carriers/harrah_transportation.rb +23 -0
  139. data/lib/freight_kit/carriers/her_trucking.rb +10 -0
  140. data/lib/freight_kit/carriers/hercules_freight.rb +20 -0
  141. data/lib/freight_kit/carriers/highlander_xpress.rb +36 -0
  142. data/lib/freight_kit/carriers/hn_transport.rb +10 -0
  143. data/lib/freight_kit/carriers/honolulu_freight_service.rb +10 -0
  144. data/lib/freight_kit/carriers/hot_line_freight_system_inc.rb +12 -0
  145. data/lib/freight_kit/carriers/hotshot_freight_of_texas.rb +13 -0
  146. data/lib/freight_kit/carriers/houser_transport.rb +27 -0
  147. data/lib/freight_kit/carriers/infiniti_freight_logistics.rb +28 -0
  148. data/lib/freight_kit/carriers/infinity_trucking.rb +10 -0
  149. data/lib/freight_kit/carriers/interstate_tma.rb +10 -0
  150. data/lib/freight_kit/carriers/intrade_industries.rb +10 -0
  151. data/lib/freight_kit/carriers/jasper_trucking.rb +28 -0
  152. data/lib/freight_kit/carriers/jb_hunt.rb +11 -0
  153. data/lib/freight_kit/carriers/jfj_transportation.rb +8 -8
  154. data/lib/freight_kit/carriers/jkb_express.rb +10 -0
  155. data/lib/freight_kit/carriers/jlm_transport.rb +10 -0
  156. data/lib/freight_kit/carriers/johansson_transport.rb +10 -0
  157. data/lib/freight_kit/carriers/jones_express.rb +10 -0
  158. data/lib/freight_kit/carriers/jp_logistics.rb +41 -0
  159. data/lib/freight_kit/carriers/just_in_time_cargo.rb +29 -0
  160. data/lib/freight_kit/carriers/kengkok_times.rb +10 -0
  161. data/lib/freight_kit/carriers/kings_express.rb +10 -0
  162. data/lib/freight_kit/carriers/klc_transportation.rb +10 -0
  163. data/lib/freight_kit/carriers/km_trucking.rb +10 -0
  164. data/lib/freight_kit/carriers/kma_logistics.rb +10 -0
  165. data/lib/freight_kit/carriers/krc_logistics.rb +10 -0
  166. data/lib/freight_kit/carriers/ktx.rb +10 -0
  167. data/lib/freight_kit/carriers/landstar.rb +25 -0
  168. data/lib/freight_kit/carriers/lanter_distributing_llc.rb +30 -0
  169. data/lib/freight_kit/carriers/ld_trucking.rb +10 -0
  170. data/lib/freight_kit/carriers/legacy_logistics_solutions.rb +10 -0
  171. data/lib/freight_kit/carriers/leonards_express.rb +10 -0
  172. data/lib/freight_kit/carriers/liberty_linehaul_west.rb +28 -0
  173. data/lib/freight_kit/carriers/liberty_transport.rb +10 -0
  174. data/lib/freight_kit/carriers/lightning_express.rb +10 -0
  175. data/lib/freight_kit/carriers/lj_express.rb +24 -0
  176. data/lib/freight_kit/carriers/lkp_enterprises.rb +10 -0
  177. data/lib/freight_kit/carriers/ltl_pros.rb +28 -0
  178. data/lib/freight_kit/carriers/m_and_m_and_sons.rb +10 -0
  179. data/lib/freight_kit/carriers/mag_lines_transport.rb +10 -0
  180. data/lib/freight_kit/carriers/magic_messenger.rb +24 -0
  181. data/lib/freight_kit/carriers/majors_transit.rb +10 -0
  182. data/lib/freight_kit/carriers/map_global_logistics.rb +10 -0
  183. data/lib/freight_kit/carriers/matths_trucking.rb +11 -0
  184. data/lib/freight_kit/carriers/mav_canadian_transport.rb +13 -0
  185. data/lib/freight_kit/carriers/mc_systems.rb +35 -0
  186. data/lib/freight_kit/carriers/mega_fleet.rb +10 -0
  187. data/lib/freight_kit/carriers/mega_trans_group.rb +28 -0
  188. data/lib/freight_kit/carriers/meta_express.rb +10 -0
  189. data/lib/freight_kit/carriers/mia_transportation.rb +10 -0
  190. data/lib/freight_kit/carriers/midwest_motor_express.rb +14 -0
  191. data/lib/freight_kit/carriers/midwest_transport_and_trucking.rb +10 -0
  192. data/lib/freight_kit/carriers/mikade_delivery_service.rb +10 -0
  193. data/lib/freight_kit/carriers/mohoff_freight_lines.rb +23 -0
  194. data/lib/freight_kit/carriers/montata_travelers_express.rb +10 -0
  195. data/lib/freight_kit/carriers/morgan_van_lines.rb +29 -0
  196. data/lib/freight_kit/carriers/moto_transportation.rb +24 -0
  197. data/lib/freight_kit/carriers/mountain_valley_express.rb +197 -0
  198. data/lib/freight_kit/carriers/ms_freight.rb +27 -0
  199. data/lib/freight_kit/carriers/mvg_transport.rb +10 -0
  200. data/lib/freight_kit/carriers/n_and_m_transfer_co_inc.rb +29 -0
  201. data/lib/freight_kit/carriers/nabot_transport_solutions.rb +10 -0
  202. data/lib/freight_kit/carriers/national_freight_xpress.rb +10 -0
  203. data/lib/freight_kit/carriers/navigation_group.rb +10 -0
  204. data/lib/freight_kit/carriers/nelson_trucking.rb +10 -0
  205. data/lib/freight_kit/carriers/network_1_transportation.rb +10 -0
  206. data/lib/freight_kit/carriers/new_century_transport.rb +28 -0
  207. data/lib/freight_kit/carriers/new_penn_motor_express.rb +11 -0
  208. data/lib/freight_kit/carriers/nieves_transportation.rb +10 -0
  209. data/lib/freight_kit/carriers/nolan_transportation_group.rb +26 -0
  210. data/lib/freight_kit/carriers/northland_trucking.rb +10 -0
  211. data/lib/freight_kit/carriers/northwest_carrier_logistics.rb +27 -0
  212. data/lib/freight_kit/carriers/nt_usa.rb +10 -0
  213. data/lib/freight_kit/carriers/nu_line_transportation.rb +10 -0
  214. data/lib/freight_kit/carriers/numark_transportation.rb +80 -0
  215. data/lib/freight_kit/carriers/nvk_transport.rb +10 -0
  216. data/lib/freight_kit/carriers/ny_transport.rb +10 -0
  217. data/lib/freight_kit/carriers/oak_harbor.rb +28 -0
  218. data/lib/freight_kit/carriers/oakline_transportation.rb +10 -0
  219. data/lib/freight_kit/carriers/old_dominion_freight_line.rb +30 -0
  220. data/lib/freight_kit/carriers/on_trac.rb +573 -0
  221. data/lib/freight_kit/carriers/one_hundred_one_transport.rb +10 -0
  222. data/lib/freight_kit/carriers/one_way_delivery.rb +10 -0
  223. data/lib/freight_kit/carriers/oracle_transportation_solutions.rb +10 -0
  224. data/lib/freight_kit/carriers/orange_courier.rb +27 -0
  225. data/lib/freight_kit/carriers/ortas_trucking.rb +10 -0
  226. data/lib/freight_kit/carriers/pac_trux_transportation.rb +10 -0
  227. data/lib/freight_kit/carriers/pacer.rb +10 -0
  228. data/lib/freight_kit/carriers/pacific_logistics.rb +10 -0
  229. data/lib/freight_kit/carriers/pacific_states_truck_lines.rb +10 -0
  230. data/lib/freight_kit/carriers/paradise_distributing.rb +10 -0
  231. data/lib/freight_kit/carriers/paramount_freight_systems.rb +10 -0
  232. data/lib/freight_kit/carriers/peninsula_truck_lines.rb +222 -0
  233. data/lib/freight_kit/carriers/pg_transport.rb +10 -0
  234. data/lib/freight_kit/carriers/pgs_360.rb +10 -0
  235. data/lib/freight_kit/carriers/pilot_freight_services.rb +10 -0
  236. data/lib/freight_kit/carriers/pious_trans.rb +27 -0
  237. data/lib/freight_kit/carriers/pitt_ohio_express.rb +30 -0
  238. data/lib/freight_kit/carriers/pki_logistics.rb +12 -0
  239. data/lib/freight_kit/carriers/plana_transportation.rb +28 -0
  240. data/lib/freight_kit/carriers/prestige.rb +10 -0
  241. data/lib/freight_kit/carriers/pro_trans_solutions.rb +28 -0
  242. data/lib/freight_kit/carriers/puma_logistics.rb +10 -0
  243. data/lib/freight_kit/carriers/pwc_international.rb +10 -0
  244. data/lib/freight_kit/carriers/quality_logistics.rb +10 -0
  245. data/lib/freight_kit/carriers/queen_star_trucking.rb +27 -0
  246. data/lib/freight_kit/carriers/r_and_l_carriers.rb +11 -0
  247. data/lib/freight_kit/carriers/rac_transport.rb +10 -0
  248. data/lib/freight_kit/carriers/re_logistics.rb +23 -0
  249. data/lib/freight_kit/carriers/reddaway.rb +11 -0
  250. data/lib/freight_kit/carriers/reefer_van_network.rb +13 -0
  251. data/lib/freight_kit/carriers/refrigerated_trucking_and_ltl_transportation_services.rb +10 -0
  252. data/lib/freight_kit/carriers/ridgeline_express.rb +10 -0
  253. data/lib/freight_kit/carriers/rist_transport.rb +29 -0
  254. data/lib/freight_kit/carriers/river_city_transport.rb +10 -0
  255. data/lib/freight_kit/carriers/roadrunner_transportation_services.rb +675 -0
  256. data/lib/freight_kit/carriers/roadtex.rb +13 -0
  257. data/lib/freight_kit/carriers/ronald_transport_services.rb +10 -0
  258. data/lib/freight_kit/carriers/rose_trucking.rb +24 -0
  259. data/lib/freight_kit/carriers/rp_and_j_transport.rb +24 -0
  260. data/lib/freight_kit/carriers/rpm_transportation.rb +11 -0
  261. data/lib/freight_kit/carriers/rude_transportation.rb +30 -0
  262. data/lib/freight_kit/carriers/s_and_s_logistics.rb +10 -0
  263. data/lib/freight_kit/carriers/saia.rb +470 -361
  264. data/lib/freight_kit/carriers/sb_transportation.rb +27 -0
  265. data/lib/freight_kit/carriers/schneider_national.rb +29 -0
  266. data/lib/freight_kit/carriers/schwarz_trucking.rb +10 -0
  267. data/lib/freight_kit/carriers/sewell_motor_express.rb +29 -0
  268. data/lib/freight_kit/carriers/shawnee_trucking.rb +28 -0
  269. data/lib/freight_kit/carriers/shi_logistics.rb +10 -0
  270. data/lib/freight_kit/carriers/sinbad_transport.rb +10 -0
  271. data/lib/freight_kit/carriers/skyway.rb +10 -0
  272. data/lib/freight_kit/carriers/smith_cargo_transportation_services.rb +23 -0
  273. data/lib/freight_kit/carriers/sna_transportation.rb +10 -0
  274. data/lib/freight_kit/carriers/solid_group.rb +10 -0
  275. data/lib/freight_kit/carriers/solution_carrier_express.rb +10 -0
  276. data/lib/freight_kit/carriers/southeastern_freight_lines.rb +450 -0
  277. data/lib/freight_kit/carriers/southwestern_motor_transport.rb +30 -0
  278. data/lib/freight_kit/carriers/span_alaska.rb +10 -0
  279. data/lib/freight_kit/carriers/specialize_transportation.rb +27 -0
  280. data/lib/freight_kit/carriers/ssi_refrigerated_express.rb +10 -0
  281. data/lib/freight_kit/carriers/standard_forwarding_llc.rb +28 -0
  282. data/lib/freight_kit/carriers/star_american_enterprise.rb +10 -0
  283. data/lib/freight_kit/carriers/sterling_transportation.rb +10 -0
  284. data/lib/freight_kit/carriers/stg.rb +163 -0
  285. data/lib/freight_kit/carriers/supervan_service.rb +10 -0
  286. data/lib/freight_kit/carriers/sutton_transport_inc.rb +12 -0
  287. data/lib/freight_kit/carriers/swift_transportation.rb +28 -0
  288. data/lib/freight_kit/carriers/t_force_worldwide.rb +617 -0
  289. data/lib/freight_kit/carriers/tax_airfreight_inc.rb +35 -0
  290. data/lib/freight_kit/carriers/tforce_freight_inc.rb +30 -0
  291. data/lib/freight_kit/carriers/the_custom_companies.rb +162 -0
  292. data/lib/freight_kit/carriers/thk_trucking.rb +28 -0
  293. data/lib/freight_kit/carriers/tiger_cool_express.rb +11 -0
  294. data/lib/freight_kit/carriers/tili_logistics.rb +10 -0
  295. data/lib/freight_kit/carriers/tmt_industries.rb +10 -0
  296. data/lib/freight_kit/carriers/top_ten_express.rb +28 -0
  297. data/lib/freight_kit/carriers/total_quality_logistics.rb +338 -0
  298. data/lib/freight_kit/carriers/total_transportation.rb +258 -0
  299. data/lib/freight_kit/carriers/trans_international_trucking.rb +29 -0
  300. data/lib/freight_kit/carriers/treasure_transportation.rb +10 -0
  301. data/lib/freight_kit/carriers/tri_state_services.rb +10 -0
  302. data/lib/freight_kit/carriers/tritex_freighters.rb +10 -0
  303. data/lib/freight_kit/carriers/triways.rb +10 -0
  304. data/lib/freight_kit/carriers/tsi_kansas.rb +29 -0
  305. data/lib/freight_kit/carriers/u_and_r_transportation.rb +23 -0
  306. data/lib/freight_kit/carriers/union_pacific.rb +11 -0
  307. data/lib/freight_kit/carriers/united_freight_logistics.rb +10 -0
  308. data/lib/freight_kit/carriers/unlimited_distance_transportation.rb +10 -0
  309. data/lib/freight_kit/carriers/up_streamline.rb +10 -0
  310. data/lib/freight_kit/carriers/ups_freight.rb +12 -0
  311. data/lib/freight_kit/carriers/us_freightways.rb +10 -0
  312. data/lib/freight_kit/carriers/usa_truck.rb +28 -0
  313. data/lib/freight_kit/carriers/usf_holland.rb +11 -0
  314. data/lib/freight_kit/carriers/valley_cartage.rb +11 -0
  315. data/lib/freight_kit/carriers/vc_transport.rb +10 -0
  316. data/lib/freight_kit/carriers/vision_express.rb +11 -0
  317. data/lib/freight_kit/carriers/vision_logistics_group.rb +10 -0
  318. data/lib/freight_kit/carriers/vmg_transportation_group.rb +10 -0
  319. data/lib/freight_kit/carriers/volpe_express.rb +10 -0
  320. data/lib/freight_kit/carriers/ward_trucking.rb +29 -0
  321. data/lib/freight_kit/carriers/wdwb.rb +10 -0
  322. data/lib/freight_kit/carriers/western_flyer_express.rb +28 -0
  323. data/lib/freight_kit/carriers/western_regional_delivery_service.rb +271 -0
  324. data/lib/freight_kit/carriers/western_specialized_trucking.rb +22 -0
  325. data/lib/freight_kit/carriers/win_distribution.rb +28 -0
  326. data/lib/freight_kit/carriers/wlb_transport.rb +10 -0
  327. data/lib/freight_kit/carriers/x_trux.rb +29 -0
  328. data/lib/freight_kit/carriers/xpo_logistics.rb +427 -0
  329. data/lib/freight_kit/carriers/xpress_global_systems.rb +30 -0
  330. data/lib/freight_kit/carriers/xylo_trucking.rb +10 -0
  331. data/lib/freight_kit/carriers/yrc_freight.rb +24 -0
  332. data/lib/freight_kit/carriers/zentner_transportation.rb +28 -0
  333. data/lib/freight_kit/carriers.rb +331 -34
  334. data/lib/freight_kit/countries.rb +22 -0
  335. data/lib/freight_kit/error.rb +0 -2
  336. data/lib/freight_kit/errors/document_not_found_error.rb +0 -2
  337. data/lib/freight_kit/errors/expired_credentials_error.rb +0 -2
  338. data/lib/freight_kit/errors/http_error.rb +0 -2
  339. data/lib/freight_kit/errors/invalid_credentials_error.rb +0 -2
  340. data/lib/freight_kit/errors/response_error.rb +0 -2
  341. data/lib/freight_kit/errors/shipment_not_found_error.rb +0 -2
  342. data/lib/freight_kit/errors/unserviceable_accessorials_error.rb +2 -4
  343. data/lib/freight_kit/errors/unserviceable_error.rb +0 -2
  344. data/lib/freight_kit/helpers/documentable.rb +0 -2
  345. data/lib/freight_kit/helpers/pickupable.rb +3 -5
  346. data/lib/freight_kit/helpers/rateable.rb +0 -2
  347. data/lib/freight_kit/helpers/trackable.rb +0 -2
  348. data/lib/freight_kit/http_client/cache_store.rb +2 -4
  349. data/lib/freight_kit/http_client/log_device.rb +0 -2
  350. data/lib/freight_kit/http_client/response.rb +0 -2
  351. data/lib/freight_kit/http_client/revalidation.rb +0 -2
  352. data/lib/freight_kit/http_client/safe_retries.rb +0 -2
  353. data/lib/freight_kit/http_client/zstd.rb +2 -4
  354. data/lib/freight_kit/http_client.rb +8 -12
  355. data/lib/freight_kit/model.rb +1 -3
  356. data/lib/freight_kit/models/address.rb +15 -0
  357. data/lib/freight_kit/models/contact.rb +3 -4
  358. data/lib/freight_kit/models/country.rb +20 -0
  359. data/lib/freight_kit/models/credential.rb +14 -16
  360. data/lib/freight_kit/models/date_time.rb +0 -2
  361. data/lib/freight_kit/models/document_response.rb +0 -2
  362. data/lib/freight_kit/models/label.rb +0 -2
  363. data/lib/freight_kit/models/location.rb +10 -25
  364. data/lib/freight_kit/models/pickup_response.rb +0 -2
  365. data/lib/freight_kit/models/price.rb +0 -2
  366. data/lib/freight_kit/models/rate.rb +0 -2
  367. data/lib/freight_kit/models/rate_response.rb +0 -2
  368. data/lib/freight_kit/models/region.rb +19 -0
  369. data/lib/freight_kit/models/response.rb +0 -2
  370. data/lib/freight_kit/models/shipment.rb +4 -6
  371. data/lib/freight_kit/models/shipment_event.rb +0 -2
  372. data/lib/freight_kit/models/terminal.rb +10 -0
  373. data/lib/freight_kit/models/tracking_response.rb +0 -2
  374. data/lib/freight_kit/package.rb +51 -53
  375. data/lib/freight_kit/package_item.rb +14 -14
  376. data/lib/freight_kit/packaging.rb +21 -26
  377. data/lib/freight_kit/platform.rb +0 -32
  378. data/lib/freight_kit/platforms/carrier_logistics.rb +331 -345
  379. data/lib/freight_kit/platforms/next_tms.rb +93 -0
  380. data/lib/freight_kit/platforms/the_great_information_factory.rb +500 -425
  381. data/lib/freight_kit/regions.rb +27 -0
  382. data/lib/freight_kit/shipment_packer.rb +36 -38
  383. data/lib/freight_kit/tariff/overlength_rule.rb +1 -5
  384. data/lib/freight_kit/tariff.rb +0 -2
  385. data/lib/freight_kit.rb +84 -11
  386. metadata +361 -51
  387. data/configuration/carriers/abfs.yml +0 -124
  388. data/configuration/carriers/btvp.yml +0 -84
  389. data/configuration/carriers/ccyq.yml +0 -121
  390. data/configuration/carriers/clni.yml +0 -113
  391. data/configuration/carriers/cnwy.yml +0 -113
  392. data/configuration/carriers/ctbv.yml +0 -117
  393. data/configuration/carriers/dcha.yml +0 -105
  394. data/configuration/carriers/dlds.yml +0 -111
  395. data/configuration/carriers/dphe.yml +0 -130
  396. data/configuration/carriers/drrq.yml +0 -131
  397. data/configuration/carriers/fcsy.yml +0 -102
  398. data/configuration/carriers/fwda.yml +0 -137
  399. data/configuration/carriers/jfj_transportation.yml +0 -2
  400. data/configuration/carriers/mtvl.yml +0 -12
  401. data/configuration/carriers/numk.yml +0 -14
  402. data/configuration/carriers/otcl.yml +0 -124
  403. data/configuration/carriers/pens.yml +0 -22
  404. data/configuration/carriers/rdfs.yml +0 -142
  405. data/configuration/carriers/saia.yml +0 -129
  406. data/configuration/carriers/sefl.yml +0 -115
  407. data/configuration/carriers/totl.yml +0 -111
  408. data/configuration/carriers/tqyl.yml +0 -28
  409. data/configuration/carriers/wrds.yml +0 -20
  410. data/configuration/platforms/carrier_logistics.yml +0 -25
  411. data/configuration/platforms/next.yml +0 -12
  412. data/configuration/platforms/the_great_information_factory.yml +0 -122
  413. data/lib/freight_kit/carriers/abfs.rb +0 -421
  414. data/lib/freight_kit/carriers/btvp.rb +0 -29
  415. data/lib/freight_kit/carriers/ccyq.rb +0 -310
  416. data/lib/freight_kit/carriers/clni.rb +0 -396
  417. data/lib/freight_kit/carriers/cnwy.rb +0 -327
  418. data/lib/freight_kit/carriers/ctbv.rb +0 -53
  419. data/lib/freight_kit/carriers/dcha.rb +0 -76
  420. data/lib/freight_kit/carriers/dlds.rb +0 -49
  421. data/lib/freight_kit/carriers/dphe.rb +0 -472
  422. data/lib/freight_kit/carriers/drrq.rb +0 -580
  423. data/lib/freight_kit/carriers/fcsy.rb +0 -57
  424. data/lib/freight_kit/carriers/fwda.rb +0 -744
  425. data/lib/freight_kit/carriers/mtvl.rb +0 -34
  426. data/lib/freight_kit/carriers/numk.rb +0 -58
  427. data/lib/freight_kit/carriers/otcl.rb +0 -520
  428. data/lib/freight_kit/carriers/pens.rb +0 -204
  429. data/lib/freight_kit/carriers/rdfs.rb +0 -521
  430. data/lib/freight_kit/carriers/sefl.rb +0 -342
  431. data/lib/freight_kit/carriers/totl.rb +0 -172
  432. data/lib/freight_kit/carriers/tqyl.rb +0 -337
  433. data/lib/freight_kit/carriers/wrds.rb +0 -246
  434. data/lib/freight_kit/platforms/next.rb +0 -101
@@ -0,0 +1,197 @@
1
+ module FreightKit
2
+ module Carriers
3
+ class MountainValleyExpress < Platforms::CarrierLogistics
4
+ class << self
5
+ def check_mailing_addresses
6
+ [
7
+ Address.new(
8
+ city: 'Jurupa Valley',
9
+ country: Countries.find_by(iso31661_alpha2: 'US'),
10
+ id: 'c6e8a2a5-29fd-4c64-99a3-cef20f20cd37',
11
+ postal_code: '91752',
12
+ region_abbreviation: 'CA',
13
+ street: '4685 Pier Enterprises Way Ste B'
14
+ )
15
+ ]
16
+ end
17
+
18
+ def contacts
19
+ [Contact.new(department: 'Main', id: 'c61f7a37-dee6-4e68-8240-404a30a6c495', phone: '+18773256447')]
20
+ end
21
+
22
+ def headquarters
23
+ Address.new(
24
+ city: 'Manteca',
25
+ country: Countries.find_by(iso31661_alpha2: 'US'),
26
+ id: 'd62512bc-08f5-4539-890e-e965909058bb',
27
+ postal_code: '95337',
28
+ region_abbreviation: 'CA',
29
+ street: '1019 Bessemer Ave'
30
+ )
31
+ end
32
+
33
+ def id = 'ff9e9eeb-7fe8-4307-b3bd-7ddd6e76b6ab'
34
+ def legal_name = 'Mountain Valley Express LLC'
35
+
36
+ def mappable_accessorials
37
+ {
38
+ amusement_park_delivery: 'LTDD',
39
+ amusement_park_pickup: 'LTDP',
40
+ appointment_delivery: 'APPT',
41
+ athletic_facility_delivery: 'LTDD',
42
+ athletic_facility_pickup: 'LTDP',
43
+ cemetery_delivery: 'LTDD',
44
+ cemetery_pickup: 'LTDP',
45
+ church_delivery: 'LTDD',
46
+ church_pickup: 'LTDP',
47
+ construction_delivery: 'COND',
48
+ construction_pickup: 'CONP',
49
+ dock_dropoff: 'LTDD',
50
+ dock_pickup: 'LTDP',
51
+ farm_delivery: 'LTDD',
52
+ farm_pickup: 'LTDP',
53
+ fitness_center_delivery: 'LTDD',
54
+ fitness_center_pickup: 'LTDP',
55
+ golf_course_delivery: 'LTDD',
56
+ golf_course_pickup: 'LTDP',
57
+ government_delivery: 'LTDD',
58
+ government_pickup: 'LTDP',
59
+ grocery_store_delivery: 'LTDP',
60
+ grocery_store_pickup: 'LTDP',
61
+ grocery_warehouse_delivery: 'GROC',
62
+ grocery_warehouse_pickup: 'LTDP',
63
+ hospital_delivery: 'LTDD',
64
+ hospital_pickup: 'LTDP',
65
+ hotel_delivery: 'LTDD',
66
+ hotel_pickup: 'LTDP',
67
+ inside_delivery: 'INSD',
68
+ inside_pickup: 'INSP',
69
+ inspection_site_delivery: 'LTDD',
70
+ inspection_site_pickup: 'LTDP',
71
+ jobsite_delivery: 'LTDD',
72
+ jobsite_pickup: 'LTDP',
73
+ liftgate_delivery: 'LIFD',
74
+ liftgate_pickup: 'LIFP',
75
+ mall_delivery: 'LTDD',
76
+ mall_pickup: 'LTDP',
77
+ marina_delivery: 'LTDD',
78
+ marina_pickup: 'LTDP',
79
+ military_site_delivery: 'LTDD',
80
+ military_site_pickup: 'LTDP',
81
+ mine_site_delivery: 'MINED',
82
+ mine_site_pickup: 'MINEP',
83
+ motel_delivery: 'LTDD',
84
+ motel_pickup: 'LTDP',
85
+ nursing_home_delivery: 'LTDD',
86
+ nursing_home_pickup: 'LTDP',
87
+ park_delivery: 'LTDD',
88
+ park_pickup: 'LTDP',
89
+ prison_delivery: 'LTDD',
90
+ prison_pickup: 'LTDP',
91
+ ranch_delivery: 'LTDD',
92
+ ranch_pickup: 'LTDP',
93
+ reservation_delivery: 'LTDD',
94
+ reservation_pickup: 'LTDP',
95
+ residential_delivery: 'RESI',
96
+ residential_pickup: 'RESP',
97
+ resort_delivery: 'LTDD',
98
+ resort_pickup: 'LTDP',
99
+ restaurant_delivery: 'LTDD',
100
+ restaurant_pickup: 'LTDP',
101
+ school_delivery: 'LTDD',
102
+ school_pickup: 'LTDP',
103
+ steel_mill_delivery: 'LTDD',
104
+ steel_mill_pickup: 'LTDP',
105
+ storage_facility_delivery: 'LTDD',
106
+ storage_facility_pickup: 'LTDP',
107
+ university_delivery: 'LTDD',
108
+ university_pickup: 'LTDP',
109
+ utility_site_delivery: 'LTDD',
110
+ utility_site_pickup: 'LTDP'
111
+ }
112
+ end
113
+
114
+ def maximum_height = Measured::Length.new(105, :inches)
115
+ def maximum_weight = Measured::Weight.new(10_000, :pounds)
116
+ def minimum_length_for_overlength_fees = Measured::Length.new(12, :feet)
117
+ def name = 'Mountain Valley Express'
118
+ def overlength_fees_require_tariff? = false
119
+ def scac = 'DCHA'
120
+ def services = %i[standard]
121
+
122
+ def unserviceable_accessorials
123
+ %i[
124
+ airport_delivery
125
+ airport_pickup
126
+ appointment_pickup
127
+ brewery_delivery
128
+ brewery_pickup
129
+ convention_delivery
130
+ convention_pickup
131
+ customs_brokerage
132
+ driver_assist
133
+ early_morning_delivery
134
+ fair_delivery
135
+ fair_pickup
136
+ flatbed_delivery
137
+ flatbed_pickup
138
+ guaranteed_delivery
139
+ guaranteed_delivery_am
140
+ guaranteed_delivery_pm
141
+ winery_delivery
142
+ winery_pickup
143
+ ]
144
+ end
145
+
146
+ def us_dot_number = 172_279
147
+ end
148
+
149
+ API = Platforms::CarrierLogistics::API.deep_merge(carrier_code: 'dcha').freeze
150
+
151
+ # Documents
152
+
153
+ # Rates
154
+ def build_calculated_accessorials(shipment)
155
+ [].tap do |builder|
156
+ builder << 'HAZM' if shipment.packages.any?(&:hazmat?)
157
+
158
+ if shipment.accessorials.present? && %i[
159
+ residential_delivery
160
+ residential_pickup
161
+ ].intersect?(shipment.accessorials)
162
+ builder << 'RES'
163
+ end
164
+
165
+ longest_dimension = shipment.packages.map { |package| [package.length(:in), package.width(:in)].max }.max.ceil
166
+
167
+ case longest_dimension
168
+ when (144..155) then builder << 'XL12'
169
+ when (156..167) then builder << 'XL13'
170
+ when (168..179) then builder << 'XL14'
171
+ when (180..191) then builder << 'XL15'
172
+ when (192..203) then builder << 'XL16'
173
+ when (204..215) then builder << 'XL17'
174
+ when (216..227) then builder << 'XL18'
175
+ when (228..239) then builder << 'XL19'
176
+ when (240..251) then builder << 'XL20'
177
+ when (252..483) then builder << 'XL21'
178
+ when (484..275) then builder << 'XL22'
179
+ when (276..287) then builder << 'XL23'
180
+ when (288..299) then builder << 'XL24'
181
+ when (300..311) then builder << 'XL25'
182
+ when (312..323) then builder << 'XL26'
183
+ when (324..) then builder << 'XL27'
184
+ end
185
+ end
186
+ end
187
+
188
+ # Tracking
189
+
190
+ # protected
191
+
192
+ # Documents
193
+
194
+ # Rates
195
+ end
196
+ end
197
+ end
@@ -0,0 +1,27 @@
1
+ module FreightKit
2
+ module Carriers
3
+ class MSFreight < Carrier
4
+ class << self
5
+ def contacts
6
+ [Contact.new(department: 'Main', id: 'e819bac5-4573-41c0-bd35-b48dfef3de87', phone: '+16623072705')]
7
+ end
8
+
9
+ def headquarters
10
+ Address.new(
11
+ city: 'Grenada',
12
+ country: Countries.find_by(iso31661_alpha2: 'US'),
13
+ id: 'b9de7f9a-39e9-4c5b-98ee-2fe97d77ac76',
14
+ postal_code: '38901',
15
+ region_abbreviation: 'MS',
16
+ street: '1283 Lakeview Drive'
17
+ )
18
+ end
19
+
20
+ def id = '8f47af6c-98fe-4457-8de9-18d5f82d2b20'
21
+ def legal_name = 'MS Freight Company Inc'
22
+ def name = 'MS Freight'
23
+ def us_dot_number = 2_090_356
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,10 @@
1
+ module FreightKit
2
+ module Carriers
3
+ class MVGTransport < Carrier
4
+ class << self
5
+ def id = '2a5ee564-982c-477e-8cad-84a7241e023f'
6
+ def name = 'MVG Transport'
7
+ end
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,29 @@
1
+ module FreightKit
2
+ module Carriers
3
+ class NAndMTransferCoInc < Carrier
4
+ class << self
5
+ def contacts
6
+ [Contact.new(department: 'Main', id: '4ff2b22b-9aed-4d48-abc8-6596c9fe86c9', phone: '+18002364463')]
7
+ end
8
+
9
+ def headquarters
10
+ Address.new(
11
+ city: 'Neenah',
12
+ country: Countries.find_by(iso31661_alpha2: 'US'),
13
+ id: 'b854100a-be8b-4c51-83f7-294d86c66518',
14
+ postal_code: '54956',
15
+ region_abbreviation: 'WI',
16
+ street: '630 Muttart Rd'
17
+ )
18
+ end
19
+
20
+ def id = '432e45d3-b122-40b3-92c7-6e4c578aed3c'
21
+ def legal_name = 'N & M Transfer Co., Inc.'
22
+ def name = 'N & M Transfer'
23
+ def scac = 'NMTF'
24
+ def us_dot_number = 191_755
25
+ def us_mc_number = 154_495
26
+ end
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,10 @@
1
+ module FreightKit
2
+ module Carriers
3
+ class NabotTransportSolutions < Carrier
4
+ class << self
5
+ def id = 'a908b0cd-674d-4c2e-82f3-f633437a022d'
6
+ def name = 'Nabot Transport Solutions'
7
+ end
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,10 @@
1
+ module FreightKit
2
+ module Carriers
3
+ class NationalFreightXpress < Carrier
4
+ class << self
5
+ def id = 'd734f471-330e-40cd-993d-1f17b5388730'
6
+ def name = 'National Freight Xpress'
7
+ end
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,10 @@
1
+ module FreightKit
2
+ module Carriers
3
+ class NavigationGroup < Carrier
4
+ class << self
5
+ def id = '47558eac-c92f-411e-bd17-692180396ff4'
6
+ def name = 'Navigation Group'
7
+ end
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,10 @@
1
+ module FreightKit
2
+ module Carriers
3
+ class NelsonTrucking < Carrier
4
+ class << self
5
+ def id = '981686a5-2e99-4a6d-b03e-371c73b72a33'
6
+ def name = 'Nelson Trucking'
7
+ end
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,10 @@
1
+ module FreightKit
2
+ module Carriers
3
+ class Network1Transportation < Carrier
4
+ class << self
5
+ def id = 'e3be9e5c-9457-451c-a92d-fe06ce45228b'
6
+ def name = 'Network 1 Transportation'
7
+ end
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,28 @@
1
+ module FreightKit
2
+ module Carriers
3
+ class NewCenturyTransport < Carrier
4
+ class << self
5
+ def contacts
6
+ [Contact.new(department: 'Main', id: 'e5abdf2f-f825-48df-955d-e28f9b9b776f', phone: '+18006081840')]
7
+ end
8
+
9
+ def headquarters
10
+ Address.new(
11
+ city: 'Sumner',
12
+ country: Countries.find_by(iso31661_alpha2: 'US'),
13
+ id: '7259f3ae-f95f-446c-bc46-e18ceddee5fc',
14
+ postal_code: '98390',
15
+ region_abbreviation: 'WA',
16
+ street: '1812 136th Ave E'
17
+ )
18
+ end
19
+
20
+ def id = '68c1581a-17eb-4395-870e-733b806e043a'
21
+ def legal_name = 'New Century Transport LLC'
22
+ def name = 'New Century Transport'
23
+ def us_dot_number = 1_543_578
24
+ def us_mc_number = 574_047
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,11 @@
1
+ module FreightKit
2
+ module Carriers
3
+ class NewPennMotorExpress < Carrier
4
+ class << self
5
+ def id = '270a56c8-2986-4cf6-b763-681996725204'
6
+ def name = 'New Penn Motor Express'
7
+ def scac = 'NPME'
8
+ end
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,10 @@
1
+ module FreightKit
2
+ module Carriers
3
+ class NievesTransportation < Carrier
4
+ class << self
5
+ def id = '30ec609b-7b39-425b-95df-e3bed7306ca2'
6
+ def name = 'Nieves Transportation'
7
+ end
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,26 @@
1
+ module FreightKit
2
+ module Carriers
3
+ class NolanTransportationGroup < Carrier
4
+ class << self
5
+ def check_mailing_addresses
6
+ [
7
+ Address.new(
8
+ city: 'Atlanta',
9
+ country: Countries.find_by(iso31661_alpha2: 'US'),
10
+ id: 'c73b2084-1dc0-44a2-8cba-e6e59585a6a5',
11
+ postal_code: '31193',
12
+ region_abbreviation: 'GA',
13
+ street: 'PO Box 931184'
14
+ )
15
+ ]
16
+ end
17
+
18
+ def id = 'f49ac368-8e31-4798-b8ed-a759a7ee0b78'
19
+ def legal_name = 'Nolan Transportation Group, LLC'
20
+ def name = 'Nolan Transportation Group'
21
+ def us_dot_number = 2_236_769
22
+ def us_mc_number = 567_093
23
+ end
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,10 @@
1
+ module FreightKit
2
+ module Carriers
3
+ class NorthlandTrucking < Carrier
4
+ class << self
5
+ def id = 'c6992449-4887-4bcf-bd16-ff90373eba73'
6
+ def name = 'Northland Trucking'
7
+ end
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,27 @@
1
+ module FreightKit
2
+ module Carriers
3
+ class NorthwestCarrierLogistics < Carrier
4
+ class << self
5
+ def contacts
6
+ [Contact.new(department: 'Main', id: '9effbbda-8003-4680-a310-14d4e4932863', phone: '+13605107784')]
7
+ end
8
+
9
+ def headquarters
10
+ Address.new(
11
+ city: 'Blaine',
12
+ country: Countries.find_by(iso31661_alpha2: 'US'),
13
+ id: 'dbecffeb-fae0-42af-82ad-f93f05f6c00f',
14
+ postal_code: '98230',
15
+ region_abbreviation: 'WA',
16
+ street: '8282 Portal Way'
17
+ )
18
+ end
19
+
20
+ def id = 'c11303c6-1dff-4d8c-a08d-aaf2ee6b6da0'
21
+ def legal_name = 'Northwest Carrier Logistics LLC'
22
+ def name = 'Northwest Carrier Logistics'
23
+ def us_dot_number = 1_202_098
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,10 @@
1
+ module FreightKit
2
+ module Carriers
3
+ class NTUSA < Carrier
4
+ class << self
5
+ def id = '68e5c5bf-5dd1-4ea3-9bfc-e9092061d415'
6
+ def name = 'NT USA'
7
+ end
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,10 @@
1
+ module FreightKit
2
+ module Carriers
3
+ class NuLineTransportation < Carrier
4
+ class << self
5
+ def id = '610bffea-3aa1-491a-9b4d-a1627f2178a0'
6
+ def name = 'Nu Line Transportation'
7
+ end
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,80 @@
1
+ module FreightKit
2
+ module Carriers
3
+ class NumarkTransportation < Platforms::TheGreatInformationFactory
4
+ class << self
5
+ def check_mailing_addresses
6
+ [
7
+ Address.new(
8
+ city: 'Fresno',
9
+ country: Countries.find_by(iso31661_alpha2: 'US'),
10
+ id: '88bbf0d6-8f6d-4b50-91f9-408c86ac5bb7',
11
+ postal_code: '93725',
12
+ region_abbreviation: 'CA',
13
+ street: '2737 S East Ave'
14
+ )
15
+ ]
16
+ end
17
+
18
+ def contacts
19
+ [Contact.new(department: 'Main', id: 'fcfb038c-8863-4cd0-aa1b-c429dfb9390a', phone: '+15594863113')]
20
+ end
21
+
22
+ def headquarters
23
+ Address.new(
24
+ city: 'Fresno',
25
+ country: Countries.find_by(iso31661_alpha2: 'US'),
26
+ id: '8c116efd-cdd6-48a1-8098-ea2e5db41524',
27
+ postal_code: '93725',
28
+ region_abbreviation: 'CA',
29
+ street: '2737 S East Ave'
30
+ )
31
+ end
32
+
33
+ def id = '2a1d0b5f-0b1f-4b22-b0a8-ef1906f77a01'
34
+ def legal_name = 'Numark Transportation Inc'
35
+ def maximum_height = Measured::Length.new(105, :inches)
36
+ def maximum_weight = Measured::Weight.new(10_000, :pounds)
37
+ def minimum_length_for_overlength_fees = Measured::Length.new(4, :ft)
38
+ def name = 'Numark Transportation'
39
+ def overlength_fees_require_tariff? = false
40
+ def requirements = %i[credentials]
41
+ def scac = 'NUMK'
42
+ def us_dot_number = 1_075_162
43
+ def us_mc_number = 439_902
44
+ end
45
+
46
+ include FreightKit::Documentable
47
+
48
+ API = Platforms::TheGreatInformationFactory::API.deep_merge(
49
+ domain: 'tracking.numarktransportation.net',
50
+ endpoints: {
51
+ bol: '/cgibin/timageapi?doctype=BOL',
52
+ pod: '/cgibin/timageapi?doctype=POD',
53
+ rates: '/web/services/TQUOTEAPI?wsdl',
54
+ track: '/web/services/TTRACKAPI?wsdl',
55
+ pickup: '/web/services/TPICKUPAPI?wsdl'
56
+ },
57
+ ports: { rates: 10_010, track: 10_010 }
58
+ ).freeze
59
+
60
+ def build_calculated_accessorials(packages)
61
+ longest_dimension = packages.map { |package| [package.length(:in), package.width(:in)].max }.max.ceil
62
+
63
+ return ['OVER'] if longest_dimension > 48
64
+
65
+ []
66
+ end
67
+
68
+ def build_soap_header
69
+ soap_header = super
70
+ soap_header[:password] = soap_header[:password]&.downcase
71
+
72
+ soap_header
73
+ end
74
+
75
+ protected
76
+
77
+ def wrap_request(request) = { 'args0' => request }
78
+ end
79
+ end
80
+ end
@@ -0,0 +1,10 @@
1
+ module FreightKit
2
+ module Carriers
3
+ class NVKTransport < Carrier
4
+ class << self
5
+ def id = 'c315dc2b-7834-4d6f-96c6-5a5872ced7ed'
6
+ def name = 'NVK Transport'
7
+ end
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,10 @@
1
+ module FreightKit
2
+ module Carriers
3
+ class NYTransport < Carrier
4
+ class << self
5
+ def id = '9ba16109-8627-480e-ace0-14f508a04a8a'
6
+ def name = 'NY Transport'
7
+ end
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,28 @@
1
+ module FreightKit
2
+ module Carriers
3
+ class OakHarbor < Carrier
4
+ class << self
5
+ def contacts
6
+ [Contact.new(department: 'Main', id: 'f40d6627-d49d-4bab-b1b6-c4540150a160', phone: '+12062462600')]
7
+ end
8
+
9
+ def headquarters
10
+ Address.new(
11
+ city: 'Auburn',
12
+ country: Countries.find_by(iso31661_alpha2: 'US'),
13
+ id: 'c135e3cd-1c03-4de4-b138-35dd343d220b',
14
+ postal_code: '98001',
15
+ region_abbreviation: 'WA',
16
+ street: '1339 West Valley Hwy North'
17
+ )
18
+ end
19
+
20
+ def id = '98c05d2a-daab-46df-b627-2c326096117e'
21
+ def legal_name = 'Oak Harbor Freight Lines Inc'
22
+ def name = 'Oak Harbor'
23
+ def us_dot_number = 8_314
24
+ def us_mc_number = 139_763
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,10 @@
1
+ module FreightKit
2
+ module Carriers
3
+ class OaklineTransportation < Carrier
4
+ class << self
5
+ def id = 'b7e78876-dcf2-49b2-8af7-3c70fba42022'
6
+ def name = 'Oakline Transportation'
7
+ end
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,30 @@
1
+ module FreightKit
2
+ module Carriers
3
+ class OldDominionFreightLine < Carrier
4
+ class << self
5
+ def contacts
6
+ [Contact.new(department: 'Main', id: 'aea232d3-785c-4dbf-b178-6af92f5e9f28', phone: '+18002355569')]
7
+ end
8
+
9
+ def headquarters
10
+ Address.new(
11
+ city: 'Thomasville',
12
+ country: Countries.find_by(iso31661_alpha2: 'US'),
13
+ id: 'da47bfa1-9c55-4784-b634-f09a2a5b10cc',
14
+ postal_code: '27360-8923',
15
+ region_abbreviation: 'NC',
16
+ street: '500 Old Dominion Way'
17
+ )
18
+ end
19
+
20
+ def id = '0ae69805-d3cc-41a9-8c29-bbd2fa4af818'
21
+ def legal_name = 'Old Dominion Freight Line Inc'
22
+ def name = 'Old Dominion Freight Line'
23
+ def scac = 'ODFL'
24
+ def us_dot_number = 90_849
25
+ def us_mc_number = 107_478
26
+ def website_url = 'https://www.odfl.com'
27
+ end
28
+ end
29
+ end
30
+ end