我创建了一种自定义送货方式,用于计算外部送货API的送货成本。 我按照here (Woocommerce docs)和here(Tutsplus)的说明进行了操作。
我已添加运费如下所示
var currentFormatter: DateFormatter {
let formatter = DateFormatter()
formatter.dateFormat = "yyyy-MM-dd-HH:mm:ss.SSS"
formatter.locale = Locale.current
return formatter
}
var dateFormatter: DateFormatter {
let formatter = DateFormatter()
formatter.dateFormat = "dd MMMM"
formatter.locale = Locale(identifier: "es_MX")
return formatter
}
var timeFormatter: DateFormatter {
let formatter = DateFormatter()
formatter.dateFormat = "HH:mm"
formatter.locale = Locale(identifier: "en_US_POSIX")
return formatter
}
func getTimeFromDate(dateString:String, stringFormatter:DateFormatter, currentFormatter: DateFormatter) -> String {
let currentDate = stringFormatter.date(from: dateString)
print(currentDate)//returns nil
if let formattedDate = currentDate {
return currentFormatter.string(from:formattedDate)
}else {
return ""
}
}
func getMexicanLocalizedStringFromDate(date: String) -> String?{
let currentDate = self.currentFormatter.date(from: date)
print(currentDate)//returns nil
if let formattedDate = currentDate {
return self.dateFormatter.string(from:formattedDate)
}else {
return nil
}
}
一切正常,直至客户必须完成订单,然后购物车中的商品是订单总数中包含的唯一商品。
运费方式和费用在购物车确认部分中可见,但订单确认后,订单和收据中不包含费用。
记录送货方式,但不包括费用。
编辑...这是我的整个送货插件文件
if let date = self.date {
print(date)//This returns proper date
let time = getTimeFromDate(dateString: date, stringFormatter: currentFormatter, currentFormatter: timeFormatter)
print(time)
if let monthDay = getMexicanLocalizedStringFromDate(date: date){
print(monthDay)
cell.dateLabel.text = "\(monthDay), \(time)h"
print( cell.dateLabel.text)
}}