pre alert template 02052024
<p style="margin:0px 0 12px 0;box-sizing:border-box;"></p> <p style="box-sizing: border-box; margin: 0px;">Hello — <t t-out="object.destination_partner_id.display_name" data-oe-t-inline="true" contenteditable="false" oe-keep-contenteditable=""></t> </p> <p style="box-sizing: border-box; margin: 0px;"><br>Please find below relevant information of a new shipment that is in route to you:. <br> <font><br></font> </p> <p style="box-sizing:border-box;margin:0px;font-size:13px;font-family:"Lucida Grande", Helvetica, Verdana, Arial, sans-serif;"> <font style="color:#636363;"><span style="font-weight: bolder;">Shipment Details: </span></font> </p> <ul style="box-sizing:border-box;margin:0px;font-size:13px;font-family:"Lucida Grande", Helvetica, Verdana, Arial, sans-serif;"> <li> <font style="color:#636363;"><span style="color: #636363; font-size: 13px">Ship ID: <t t-out="object.name" data-oe-t-inline="true" contenteditable="false" oe-keep-contenteditable=""></t> </span><br></font> </li> <li> <font style="color:#636363;"><span style="color: #636363; font-size: 13px">Carrier: <t t-out="object.freight_partner_id.display_name" data-oe-t-inline="true" contenteditable="false" oe-keep-contenteditable=""></t> </span><br></font> </li> <li> <font style="color:#636363;"><span style="color: #636363; font-size: 13px">Mode of Transport: <t t-out="object.mode_id.name" data-oe-t-inline="true" contenteditable="false" oe-keep-contenteditable=""> </t></span><br></font> </li> <t t-if="object.tracking_number" data-oe-t-group-active="true" data-oe-t-group="0"> <li> <font style="color:#636363;">Tracking Number: <t t-out="object.tracking_number" data-oe-t-inline="true" contenteditable="false" oe-keep-contenteditable=""></t> </font> </li> </t> <t t-if="object.house_bill" data-oe-t-group-active="true" data-oe-t-group="1"> <li> <font style="color:#636363;">HAWB/HBOL: <t t-out="object.house_bill" data-oe-t-inline="true" contenteditable="false" oe-keep-contenteditable=""></t> </font> </li> </t> <t t-if="object.master_bill" data-oe-t-group-active="true" data-oe-t-group="2"> <li> <font style="color:#636363;">MAWB/MBOL: <t t-out="object.master_bill" data-oe-t-inline="true" contenteditable="false" oe-keep-contenteditable=""></t> </font> </li> </t> <br> <li> <font style="color:#636363;"><span style="color: #636363; font-size: 13px">Origin Port: <t t-out="object.port_loading_id.name" data-oe-t-inline="true" contenteditable="false" oe-keep-contenteditable=""></t> </span><br></font> </li> <li> <font style="color:#636363;"><span style="color: #636363; font-size: 13px">ETD Origin: <t t-out="object.milestone_depatured_estimation_date" data-oe-t-inline="true" contenteditable="false" oe-keep-contenteditable=""></t> </span></font> </li> <li> <font style="color:#636363;"><span style="color: #636363; font-size: 13px">Destination Port: <t t-out="object.port_delivery_id.name" data-oe-t-inline="true" contenteditable="false" oe-keep-contenteditable=""></t> </span><br></font> </li> <li> <font style="color:#636363;"> <span style="color: #636363; font-size: 13px"> ETA Destination Port: <t t-set="first_port_found" t-value="False" data-oe-t-inline="true"></t> <t t-set="sorted_milestones" t-value="object.shipment_milestone_ids.filtered(lambda m: m.milestone_type_id.is_port_of_delivery).sorted(key=lambda m: m.estimated_date)" data-oe-t-inline="true"></t> <t t-foreach="sorted_milestones" t-as="milestone" data-oe-t-inline="true"> <t t-if="not first_port_found" data-oe-t-group="3" data-oe-t-group-active="true" data-oe-t-inline="true"> <t t-esc="milestone.estimated_date" contenteditable="false" data-oe-t-inline="true"></t> <t t-set="first_port_found" t-value="True" data-oe-t-inline="true"></t> </t> </t> </span> </font> </li> <li> <font style="color:#636363;"><span style="color: #636363; font-size: 13px">ETA For Delivery: <t t-out="object.milestone_delivered_estimation_date" data-oe-t-inline="true" contenteditable="false" oe-keep-contenteditable=""></t> </span></font> </li> <br> <li> <font style="color:#636363;"><span style="color: #636363; font-size: 13px">Description: <t t-out="object.shipment_desc" data-oe-t-inline="true" contenteditable="false" oe-keep-contenteditable=""> </t></span></font> </li> <li> <font style="color:#636363;"><span style="color: #636363; font-size: 13px">Hazmat: <t t-out="object.has_hazmat" data-oe-t-inline="true" contenteditable="false" oe-keep-contenteditable=""></t></span></font> </li> <li> <font style="color:#636363;"><span style="color: #636363; font-size: 13px">Purchase/Sales Orders:</span></font> </li> <t t-set="sale_order_names" t-value="''" data-oe-t-inline="true"></t> <t t-set="sale_order_ids" t-value="[]" data-oe-t-inline="true"></t> <t t-foreach="object.picking_ids" t-as="order" data-oe-t-inline="true"> <t t-if="order.sale_id not in sale_order_ids" data-oe-t-group="4" data-oe-t-group-active="true" data-oe-t-inline="true"> <t t-set="sale_order_ids" t-value="sale_order_ids + [order.sale_id]" data-oe-t-inline="true"></t> <t t-if="sale_order_names" data-oe-t-inline="true" data-oe-t-group="5" data-oe-t-group-active="true"> <t t-set="sale_order_names" t-value="sale_order_names + ', '" data-oe-t-inline="true"></t> </t> <t t-if="order.sale_id" data-oe-type="python"> <t t-set="sale_order_names" t-value="sale_order_names + order.sale_id.name" data-oe-t-inline="true"></t> </t> </t> </t> <t t-esc="sale_order_names" contenteditable="false" data-oe-t-inline="true" oe-keep-contenteditable=""></t> <t t-set="purchase_order_names" t-value="''" data-oe-t-inline="true"></t> <t t-set="purchase_order_ids" t-value="[]" data-oe-t-inline="true"></t> <t t-foreach="object.shipments_packing_ids" t-as="order" data-oe-t-inline="true"> <t t-if="order.purchase_order_id not in purchase_order_ids" data-oe-t-group="6" data-oe-t-group-active="true" data-oe-t-inline="true"> <t t-set="purchase_order_ids" t-value="purchase_order_ids + [order.purchase_order_id]" data-oe-t-inline="true"></t> <t t-if="purchase_order_names" data-oe-t-inline="true" data-oe-t-group="7" data-oe-t-group-active="true"> <t t-set="purchase_order_names" t-value="purchase_order_names + ', '" data-oe-t-inline="true"></t> </t> <t t-set="purchase_order_names" t-value="purchase_order_names + order.purchase_order_id.name" data-oe-t-inline="true"></t> </t> </t> <t t-esc="purchase_order_names" contenteditable="false" data-oe-t-inline="true" oe-keep-contenteditable=""></t> <t t-set="agg_purchase_order_names" t-value="''" data-oe-t-inline="true"></t> <t t-set="aggregated_purchase_order_ids" t-value="[]" data-oe-t-inline="true"></t> <t t-foreach="object.master_shipments_packing_ids" t-as="order" data-oe-t-inline="true"> <t t-if="order.purchase_order_id not in purchase_order_ids" data-oe-t-group="8" data-oe-t-group-active="true" data-oe-t-inline="true"> <t t-set="purchase_order_ids" t-value="purchase_order_ids + [order.purchase_order_id]" data-oe-t-inline="true"></t> <t t-if="agg_purchase_order_names" data-oe-t-inline="true" data-oe-t-group="9" data-oe-t-group-active="true"> <t t-set="agg_purchase_order_names" t-value="agg_purchase_order_names + ', '" data-oe-t-inline="true"></t> </t> <t t-set="agg_purchase_order_names" t-value="agg_purchase_order_names + order.purchase_order_id.name" data-oe-t-inline="true"></t> </t> </t> <t t-esc="agg_purchase_order_names" contenteditable="false" data-oe-t-inline="true" oe-keep-contenteditable=""></t> <li> <font style="color:#636363;"><span style="color: #636363; font-size: 13px">Non Inventory Items: [no or yes]:</span></font> </li> </ul> <p style="margin:0px 0 12px 0;box-sizing:border-box;"><br></p> <p style="margin:0px 0 12px 0;box-sizing:border-box;"><span style="font-weight: bolder;">Package Information</span></p> <p style="margin:0px 0 12px 0;box-sizing:border-box;"><span style="color: #636363; font-size: 13px">Number of Packages, Weight, Dims:</span></p> <p style="margin:0px 0 12px 0;box-sizing:border-box;">Total Count: <t t-set="total_pc_count" t-value="0" data-oe-t-inline="true"></t> <t t-if="object.shipment_package_ids" data-oe-t-group-active="true" data-oe-t-group="10" data-oe-t-inline="true"> <t t-foreach="object.shipment_package_ids" t-as="package" data-oe-t-inline="true"> <t t-set="total_pc_count" t-value="total_pc_count + package.quantity" data-oe-t-inline="true"></t> </t> </t> <t t-if="object.aggregate_shipment_package_ids" data-oe-t-group-active="true" data-oe-t-group="11" data-oe-t-inline="true"> <t t-set="total_pc_count" t-value="0" data-oe-t-inline="true"></t> <t t-foreach="object.aggregate_shipment_package_ids" t-as="package" data-oe-t-inline="true"> <t t-set="total_pc_count" t-value="total_pc_count + package.quantity" data-oe-t-inline="true"></t> </t> </t> <t t-esc="total_pc_count" data-oe-t-inline="true" contenteditable="false" oe-keep-contenteditable=""></t> </p> <p style="margin:0px 0 12px 0;box-sizing:border-box;">Total Gross Weight: <t t-set="total_gw" t-value="0" data-oe-t-inline="true"></t> <t t-if="object.shipment_package_ids" data-oe-t-group-active="true" data-oe-t-group="3" data-oe-t-selectable="true" data-oe-t-inline="true"> <t t-foreach="object.shipment_package_ids" t-as="package" data-oe-t-inline="true"> <t t-set="total_gw" t-value="total_gw + package.gross_weight" data-oe-t-inline="true"></t> </t> <t t-esc="total_gw" data-oe-t-inline="true" contenteditable="false" oe-keep-contenteditable=""></t> <t t-if="package.gross_weight_uom_id" data-oe-t-group-active="true" data-oe-t-group="4" data-oe-t-inline="true"> <t t-esc="' ' + package.gross_weight_uom_id.name" data-oe-t-inline="true" contenteditable="false" oe-keep-contenteditable=""></t> </t> </t> <t t-elif="object.aggregate_shipment_package_ids" data-oe-t-selectable="true" data-oe-t-group="3" data-oe-t-inline="true"> <t t-set="total_gw" t-value="0" data-oe-t-inline="true"></t> <t t-foreach="object.aggregate_shipment_package_ids" t-as="package" data-oe-t-inline="true"> <t t-set="total_gw" t-value="total_gw + package.gross_weight" data-oe-t-inline="true"></t> </t> <t t-esc="total_gw" data-oe-t-inline="true" contenteditable="false" oe-keep-contenteditable=""></t> <t t-if="package.gross_weight_uom_id" data-oe-t-group-active="true" data-oe-t-group="4" data-oe-t-inline="true"> <t t-esc="' ' + package.gross_weight_uom_id.name" data-oe-t-inline="true" contenteditable="false" oe-keep-contenteditable=""></t> </t> </t> </p> <t t-if="object.aggregate_shipment_package_ids"> <table> <thead> <tr> <th style="border: 1px solid #ddd; padding: 8px;">Quantity</th> <th style="border: 1px solid #ddd; padding: 8px;">G.W</th> <th style="border: 1px solid #ddd; padding: 8px;">Length</th> <th style="border: 1px solid #ddd; padding: 8px;">Width</th> <th style="border: 1px solid #ddd; padding: 8px;">Height</th> </tr> </thead> <tbody> <t t-foreach="object.aggregate_shipment_package_ids" t-as="agg_package"> <tr> <td style="border: 1px solid #ddd; padding: 8px;"><t t-esc="agg_package.quantity"/></td> <td style="border: 1px solid #ddd; padding: 8px;"> <t t-esc="agg_package.gross_weight"/> <t t-if="agg_package.gross_weight_uom_id"><t t-esc="' ' + agg_package.gross_weight_uom_id.name"/></t></td> <td style="border: 1px solid #ddd; padding: 8px;"> <t t-esc="agg_package.dim_length"/> <t t-if="agg_package.dim_uom_id"><t t-esc="' ' + agg_package.dim_uom_id.name"/></t></td> <td style="border: 1px solid #ddd; padding: 8px;"> <t t-esc="agg_package.dim_width"/> <t t-if="agg_package.dim_uom_id"><t t-esc="' ' + agg_package.dim_uom_id.name"/></t></td> <td style="border: 1px solid #ddd; padding: 8px;"> <t t-esc="agg_package.dim_height"/> <t t-if="agg_package.dim_uom_id"><t t-esc="' ' + agg_package.dim_uom_id.name"/></t></td> </tr> </t> </tbody> </table> </t> <t t-else=""> <table> <thead> <tr> <th style="border: 1px solid #ddd; padding: 8px;">Quantity</th> <th style="border: 1px solid #ddd; padding: 8px;">G.W</th> <th style="border: 1px solid #ddd; padding: 8px;">Length</th> <th style="border: 1px solid #ddd; padding: 8px;">Width</th> <th style="border: 1px solid #ddd; padding: 8px;">Height</th> </tr> </thead> <tbody> <t t-foreach="object.shipment_package_ids" t-as="package"> <tr> <td style="border: 1px solid #ddd; padding: 8px;"><t t-esc="package.quantity"/></td> <td style="border: 1px solid #ddd; padding: 8px;"> <t t-esc="package.gross_weight"/> <t t-if="package.gross_weight_uom_id"><t t-esc="' ' + package.gross_weight_uom_id.name"/></t></td> <td style="border: 1px solid #ddd; padding: 8px;"> <t t-esc="package.dim_length"/> <t t-if="package.dim_uom_id"><t t-esc="' ' + package.dim_uom_id.name"/></t></td> <td style="border: 1px solid #ddd; padding: 8px;"> <t t-esc="package.dim_width"/> <t t-if="package.dim_uom_id"><t t-esc="' ' + package.dim_uom_id.name"/></t></td> <td style="border: 1px solid #ddd; padding: 8px;"> <t t-esc="package.dim_height"/> <t t-if="package.dim_uom_id"><t t-esc="' ' + package.dim_uom_id.name"/></t></td> </tr> </t> </tbody> </table> </t> <p style="box-sizing:border-box;margin:0px;font-size:13px;font-family:"Lucida Grande", Helvetica, Verdana, Arial, sans-serif;"> <font style="color:#636363;"><br><span style="font-weight: bolder;">Applicable shipment documentation is uploaded in Odoo</span></font> </p> <p style="margin:0px 0 12px 0;box-sizing:border-box;"> <font style="color:#636363;"></font> <font><br>Please let us know if anything else is needed from our side.<br><br></font> </p> <p style="margin:0px 0 12px 0;box-sizing:border-box;"></p> <p style="margin:0px 0 12px 0;box-sizing:border-box;"></p> <p style="margin:0px 0 12px 0;box-sizing:border-box;"></p> <p style="caret-color:#37352f;position:relative;margin:0px 0 12px 0;box-sizing:border-box;"></p>
Leave a Comment