当前位置: 首页>>代码示例>>Python>>正文


Python ShipmentConfirm.invoice_line_total_type方法代码示例

本文整理汇总了Python中ups.shipping_package.ShipmentConfirm.invoice_line_total_type方法的典型用法代码示例。如果您正苦于以下问题:Python ShipmentConfirm.invoice_line_total_type方法的具体用法?Python ShipmentConfirm.invoice_line_total_type怎么用?Python ShipmentConfirm.invoice_line_total_type使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在ups.shipping_package.ShipmentConfirm的用法示例。


在下文中一共展示了ShipmentConfirm.invoice_line_total_type方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: _get_shipment_confirm_xml

# 需要导入模块: from ups.shipping_package import ShipmentConfirm [as 别名]
# 或者: from ups.shipping_package.ShipmentConfirm import invoice_line_total_type [as 别名]
    def _get_shipment_confirm_xml(self):
        """
        Return XML of shipment for shipment_confirm
        """
        Company = Pool().get('company.company')
        UPSConfiguration = Pool().get('ups.configuration')

        ups_config = UPSConfiguration(1)
        if not self.ups_service_type:
            self.raise_user_error('ups_service_type_missing')

        payment_info_prepaid = \
            ShipmentConfirm.payment_information_prepaid_type(
                AccountNumber=ups_config.shipper_no
            )
        payment_info = ShipmentConfirm.payment_information_type(
            payment_info_prepaid)
        packages = self._get_ups_packages()
        shipment_service = ShipmentConfirm.shipment_service_option_type(
            SaturdayDelivery='1' if self.ups_saturday_delivery
            else 'None'
        )
        description = ','.join([
            move.product.name for move in self.outgoing_moves
        ])

        shipment_args = [
            self.warehouse.address.to_ups_shipper(),
            self.delivery_address.to_ups_to_address(),
            self.warehouse.address.to_ups_from_address(),
            ShipmentConfirm.service_type(Code=self.ups_service_type.code),
            payment_info, shipment_service,
        ]
        if ups_config.negotiated_rates:
            shipment_args.append(
                ShipmentConfirm.rate_information_type(negotiated=True)
            )
        if self.warehouse.address.country.code == 'US' and \
                self.delivery_address.country.code in ['PR', 'CA']:
            # Special case for US to PR or CA InvoiceLineTotal should be sent
            monetary_value = str(sum(map(
                lambda move: move.get_monetary_value_for_ups(),
                self.outgoing_moves
            )))

            company_id = Transaction().context.get('company')
            if not company_id:
                self.raise_user_error("Company is not in context")

            company = Company(company_id)
            shipment_args.append(ShipmentConfirm.invoice_line_total_type(
                MonetaryValue=monetary_value,
                CurrencyCode=company.currency.code
            ))

        shipment_args.extend(packages)
        shipment_confirm = ShipmentConfirm.shipment_confirm_request_type(
            *shipment_args, Description=description[:35]
        )
        return shipment_confirm
开发者ID:mbehrle,项目名称:trytond-shipping-ups,代码行数:62,代码来源:stock.py

示例2: _get_shipment_confirm_xml

# 需要导入模块: from ups.shipping_package import ShipmentConfirm [as 别名]
# 或者: from ups.shipping_package.ShipmentConfirm import invoice_line_total_type [as 别名]
    def _get_shipment_confirm_xml(self):
        """
        Return XML of shipment for shipment_confirm
        """
        Company = Pool().get("company.company")

        carrier = self.carrier
        if not self.ups_service_type:
            self.raise_user_error("ups_service_type_missing")

        payment_info_prepaid = ShipmentConfirm.payment_information_prepaid_type(AccountNumber=carrier.ups_shipper_no)
        payment_info = ShipmentConfirm.payment_information_type(payment_info_prepaid)
        packages = self._get_ups_packages()
        shipment_service = ShipmentConfirm.shipment_service_option_type(
            SaturdayDelivery="1" if self.ups_saturday_delivery else "None"
        )
        description = ",".join([move.product.name for move in self.outgoing_moves])
        from_address = self._get_ship_from_address()

        shipment_args = [
            from_address.to_ups_shipper(carrier=carrier),
            self.delivery_address.to_ups_to_address(),
            from_address.to_ups_from_address(),
            ShipmentConfirm.service_type(Code=self.ups_service_type.code),
            payment_info,
            shipment_service,
        ]
        if carrier.ups_negotiated_rates:
            shipment_args.append(ShipmentConfirm.rate_information_type(negotiated=True))
        if from_address.country.code == "US" and self.delivery_address.country.code in ["PR", "CA"]:
            # Special case for US to PR or CA InvoiceLineTotal should be sent
            monetary_value = str(sum(map(lambda move: move.get_monetary_value_for_ups(), self.outgoing_moves)))

            company_id = Transaction().context.get("company")
            if not company_id:
                self.raise_user_error("Company is not in context")

            company = Company(company_id)
            shipment_args.append(
                ShipmentConfirm.invoice_line_total_type(
                    MonetaryValue=monetary_value, CurrencyCode=company.currency.code
                )
            )

        shipment_args.extend(packages)
        shipment_confirm = ShipmentConfirm.shipment_confirm_request_type(*shipment_args, Description=description[:35])
        return shipment_confirm
开发者ID:riteshshrv,项目名称:trytond-shipping-ups,代码行数:49,代码来源:stock.py


注:本文中的ups.shipping_package.ShipmentConfirm.invoice_line_total_type方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。