jh-admin/addon/supply/model/order/OrderExport.php

158 lines
5.8 KiB
PHP

<?php
/**
* SaaSMall商城系统 - 团队十年电商经验汇集巨献!
* =========================================================
* Copy right 2019-2029 成都SAAS云科技有限公司, 保留所有权利。
* ----------------------------------------------
* 官方网址: https://www.gobuysaas.com
* =========================================================
*/
namespace addon\supply\model\order;
use app\model\BaseModel;
/**
* 订单导出
* @author Administrator
*/
class OrderExport extends BaseModel
{
public $order_field = [
'order_no' => '订单编号',
'site_name' => '店铺名称',
'order_name' => '订单内容',
'order_from_name' => '订单来源',
'order_type_name' => '订单类型',
'order_promotion_name' => '营销活动类型',
'out_trade_no' => '支付流水号',
'out_trade_no_2' => '支付流水号(多次支付)',
'delivery_code' => '整体提货编码',
'order_status_name' => '订单状态',
'pay_status' => '支付状态',
'delivery_status' => '配送状态',
'refund_status' => '退款状态',
'pay_type_name' => '支付方式',
'delivery_type_name' => '配送方式',
'name' => '客户姓名',
'mobile' => '客户手机',
'telephone' => '客户固定电话',
'full_address' => '客户地址',
'buyer_ip' => '客户ip',
'buyer_ask_delivery_time' => '客户要求配送时间',
'buyer_message' => '客户留言信息',
'goods_money' => '商品总金额',
'delivery_money' => '配送费用',
'promotion_money' => '订单优惠金额',
'coupon_money' => '优惠券金额',
'order_money' => '订单合计金额',
'adjust_money' => '订单调整金额',
'balance_money' => '余额支付金额',
'pay_money' => '抵扣之后应付金额',
'refund_money' => '订单退款金额',
'pay_time' => '支付时间',
'delivery_time' => '配送时间',
'sign_time' => '签收时间',
'finish_time' => '完成时间',
'remark' => '卖家留言',
'goods_num' => '商品件数',
'delivery_status_name' => '发货状态',
'shop_money' => '店铺金额',
'platform_money' => '平台金额',
'is_settlement' => '是否进行结算',
'delivery_store_name' => '门店名称',
'promotion_type_name' => '营销类型'
];
//订单商品信息
public $order_goods_field = [
'sku_name' => '商品名称',
'sku_no' => '商品编码',
'is_virtual' => '是否是虚拟商品',
'goods_class_name' => '商品类型',
'price' => '商品卖价',
'cost_price' => '成本价',
'num' => '购买数量',
'goods_money' => '商品总价',
'cost_money' => '成本总价',
'delivery_no' => '配送单号',
'refund_no' => '退款编号',
'refund_type' => '退货方式',
'refund_apply_money' => '退款申请金额',
'refund_reason' => '退款原因',
'refund_real_money' => '实际退款金额',
'refund_delivery_name' => '退款公司名称',
'refund_delivery_no' => '退款单号',
'refund_time' => '实际退款时间',
'refund_refuse_reason' => '退款拒绝原因',
'refund_action_time' => '申请退款时间',
'commission_rate' => '待结算佣金比率',
'real_goods_money' => '实际商品购买价',
'shop_money' => '店铺实际金额',
'platform_money' => '平台实际金额',
'refund_remark' => '退款说明',
'refund_delivery_remark' => '买家退货说明',
'refund_address' => '退货地址',
'is_refund_stock' => '是否返还库存'
];
public $define_data = [
'pay_status' => ['type' => 2, 'data' => ['未支付', '已支付']],//支付状态
'delivery_status' => ['type' => 2, 'data' => ['待发货', '已发货','已收货']],//配送状态
'refund_status' => ['type' => 2, 'data' => ['未退款', '已退款']],//退款状态
'buyer_ask_delivery_time' => ['type' => 1],//购买人要求配送时间
'pay_time' => ['type' => 1],//支付时间
'delivery_time' => ['type' => 1],//订单配送时间
'sign_time' => ['type' => 1],//订单签收时间
'finish_time' => ['type' => 1],//订单完成时间
'refund_time' => ['type' => 1],//退款到账时间
'refund_action_time' => ['type' => 1],//实际退款时间
'is_settlement' => ['type' => 2, 'data' => ['否', '是']],//是否进行结算
'refund_type' => ['type' => 2, 'data' => [1 => '仅退款', 2 => '退款退货']],//退货方式
'is_refund_stock' => ['type' => 2, 'data' => ['否', '是']],//是否返还库存
];
/**
* 数据处理
* @param $data
* @param $field
* @return array
*/
public function handleData($data, $field)
{
$define_data = $this->define_data;
foreach ($data as $k => $v) {
//获取键
$keys = array_keys($v);
foreach ($keys as $key) {
if (in_array($key, $field)) {
if (array_key_exists($key, $define_data)) {
$type = $define_data[$key]['type'];
switch ($type) {
case 1:
$data[$k][$key] = time_to_date($v[$key]);
break;
case 2:
$define_data_data = $define_data[$key]['data'];
$data[$k][$key] = !empty($v[$key]) ? $define_data_data[$v[$key]] : '';
}
}
}
}
}
return $data;
}
}