<?php // +---------------------------------------------------------------------- // | likeshop开源商城系统 // +---------------------------------------------------------------------- // | 欢迎阅读学习系统程序代码,建议反馈是我们前进的动力 // | gitee下载:https://gitee.com/likeshop_gitee // | github下载:https://github.com/likeshop-github // | 访问官网:https://www.likeshop.cn // | 访问社区:https://home.likeshop.cn // | 访问手册:http://doc.likeshop.cn // | 微信公众号:likeshop技术社区 // | likeshop系列产品在gitee、github等公开渠道开源版本可免费商用,未经许可不能去除前后端官方版权标识 // | likeshop系列产品收费版本务必购买商业授权,购买去版权授权后,方可去除前后端官方版权标识 // | 禁止对系统程序代码以任何目的,任何形式的再发布 // | likeshop团队版权所有并拥有最终解释权 // +---------------------------------------------------------------------- // | author: likeshop.cn.team // +---------------------------------------------------------------------- namespace app\common\enum; use app\common\model\order\Order; /** * 订单相关 枚举类型 * Class OrderEnum * @Author FZR * @package app\common\enum */ class OrderEnum { const ORDER_CANCEL = 1; //直接退款 const ORDER_AFTERSALE_CANCEL = 0; //售后退款退款(未退款也是0) //来源 const ORDER_SOURCE_APPLET = 1;//小程序来源 const ORDER_SOURCE_H5 = 2;//h5来源 const ORDER_SOURCE_IOS = 3;//ios来源 const ORDER_SOURCE_ANDROID = 4;//安卓来源 //订单状态order_status const ORDER_STATUS_NO_PAID = 0;//待支付 const ORDER_STATUS_DELIVERY = 1;//待发货 const ORDER_STATUS_GOODS = 2;//待收货 const ORDER_STATUS_COMPLETE = 3;//已完成 const ORDER_STATUS_DOWN = 4;//已关闭 // 是否可修改物流单号的状态 const CAN_CHANGE_INVOICE_NO_ARR = [ self::ORDER_STATUS_GOODS, ]; //支付状态pay_status const PAY_STATUS_NO_PAID = 0;//待支付 const PAY_STATUS_PAID = 1;//已支付 const PAY_STATUS_REFUND = 2;//已退款 const PAY_STATUS_REFUSE_REFUND = 3;//拒绝退款 //配送方式delivery_type const DELIVERY_TYPE_EXPRESS = 0;//快递配送 const DELIVERY_TYPE_VIRTUAL = 1;//虚拟发货 const DELIVERY_TYPE_SELF = 2;//线下自提 const DELIVERY_TYPES = [ self::DELIVERY_TYPE_EXPRESS, self::DELIVERY_TYPE_VIRTUAL, self::DELIVERY_TYPE_SELF, ]; //售后状态aftersale_status const AFTERSALE_STATUS_NO_SALE = 0;//不在售后中 const AFTERSALE_STATUS_SALEING = 1;//售后中 //退款状态refund_status const REFUND_STATUS_NO_REFUND = 0;//未退款 const REFUND_STATUS_PART_REFUND = 1;//部分退款 const REFUND_STATUS_ALL_REFUND = 2;//全部退款 //订单类型 const NORMAL_ORDER = 0;//普通订单 const SECKILL_ORDER = 1;//秒杀订单 const TEAM_ORDER = 2;//拼团订单 const BARGAIN_ORDER = 3;//砍价订单 //结算状态 const SETTLE_WAIT = 0; //待结算 const SETTLE_FINISH = 1; //已结算 //发货状态 const SHIPPING_NO = 0; //未发货 const SHIPPING_FINISH = 1; //已发货 //标识子订单的退款 const IS_CANCEL_NO = 0; //售后退款或未退款 const IS_CANCEL_FINISH = 1; //直接退款 //核销状态 const NOT_WRITTEN_OFF = 0;//待核销 const WRITTEN_OFF = 1;//已核销 //订单赠送积分场景 const ORDER_PAY = 1;//订单付款 const ORDER_DELIVERY = 2;//订单发货 const ORDER_FINISH = 3;//订单完成 const ORDER_AFTER_SALE_OVER = 4;//订单超过售后期 public static function getPayWay($log) { $desc = [ OrderLogEnum::USER_ADD_ORDER => '会员提交订单', OrderLogEnum::USER_CANCEL_ORDER => '会员取消订单', OrderLogEnum::USER_DEL_ORDER => '会员删除订单', OrderLogEnum::USER_CONFIRM_ORDER => '会员确认收货', OrderLogEnum::USER_PAID_ORDER => '会员支付订单', ]; if ($log === true) { return $desc; } return isset($desc[$log]) ? $desc[$log] : $log; } /** * @notes 订单赠送积分场景 * @param $log * @return mixed|string|string[] * @author ljj * @date 2022/2/18 4:01 下午 */ public static function getOrderAward($log) { $desc = [ self::ORDER_PAY => '订单付款', self::ORDER_DELIVERY => '订单发货', self::ORDER_FINISH => '订单完成', self::ORDER_AFTER_SALE_OVER => '订单超过售后期', ]; if ($log === true) { return $desc; } return isset($desc[$log]) ? $desc[$log] : $log; } /** * @Notes: 订单状态 * @Author: 张无忌 * @param bool $type * @return array|mixed|string */ public static function getOrderStatus($type=true) { $desc = [ self::ORDER_STATUS_NO_PAID => '待支付', self::ORDER_STATUS_DELIVERY => '待发货', self::ORDER_STATUS_GOODS => '待收货', self::ORDER_STATUS_COMPLETE => '已完成', self::ORDER_STATUS_DOWN => '已关闭' ]; if ($type === true) { return $desc; } return $desc[$type] ?? '未知来源'; } /** * @Notes: 支付状态 * @Author: 张无忌 * @param bool $type * @return array|mixed|string */ public static function getPayStatus($type=true) { $desc = [ self::PAY_STATUS_NO_PAID => '待支付', self::PAY_STATUS_PAID => '已支付', self::PAY_STATUS_REFUND => '已退款', self::PAY_STATUS_REFUSE_REFUND => '拒绝退款' ]; if ($type === true) { return $desc; } return $desc[$type] ?? '未知来源'; } /** * @Notes: 退款状态 * @Author: 张无忌 * @param bool $type * @return array|mixed|string */ public static function getRefundStatus($type=true) { $desc = [ self::REFUND_STATUS_NO_REFUND => '未退款', self::REFUND_STATUS_PART_REFUND => '部分退款', self::REFUND_STATUS_ALL_REFUND => '全部退款', ]; if ($type === true) { return $desc; } return $desc[$type] ?? '未知来源'; } /** * @notes 核销状态描述 * @param bool $value * @return string|string[] * @author 段誉 * @date 2022/11/2 14:08 */ public static function getVerificationStatusDesc($value = true) { $data = [ self::NOT_WRITTEN_OFF => '待核销', self::WRITTEN_OFF => '已核销', ]; if (true === $value) { return $data; } return $data[$value]; } static function getChangeDeliveryTypeItem($goods_delivery_type) { switch ($goods_delivery_type) { case GoodsEnum::DELIVERY_EXPRESS: return static::DELIVERY_TYPE_EXPRESS; break; case GoodsEnum::DELIVERY_VIRTUAL: return static::DELIVERY_TYPE_VIRTUAL; break; case GoodsEnum::DELIVERY_SELF: return static::DELIVERY_TYPE_SELF; break; default: break; } return static::DELIVERY_TYPE_EXPRESS; } }