文件
mashangyoujiu/Application/Common/Model/RefundOrderModel.class.php

115 行
3.7 KiB
PHP
可执行文件

<?php
namespace Common\Model;
use Common\Business\Plug;
use Think\Model;
//[1.9.22]
/**
* 商户退款顺序设置表
* Class RefundOrderModel
* @package Common\Model
*/
class RefundOrderModel extends BaseModel
{
protected $tableName = 'retail_refund_order_set';
protected $fields = array(
'id', //int(11) NOT NULL AUTO_INCREMENT,
'merchant_id', //int(11) NOT NULL COMMENT '商户id',
'al_refund_order', //tinyint(2) NOT NULL DEFAULT '4',
'wx_refund_order', //tinyint(2) NOT NULL DEFAULT '5',
'cash_refund_order', //tinyint(2) NOT NULL DEFAULT '1',
'vip_refund_order', //tinyint(2) NOT NULL DEFAULT '2',
'other_refund_order', //tinyint(2) NOT NULL DEFAULT '3',
'mec_refund_order', //tinyint(2) NOT NULL DEFAULT '6',
);
/**
* 获取退款排序(一维数组)
* @param $merchant_id
* @return array
*/
public function getFindOrderAsc($merchant_id)
{
$res = $this->where(['merchant_id' => $merchant_id])->field('id,merchant_id', true)->find();
if (empty($res)) {
$res = [
'cash_refund_order' => 1,
'vip_refund_order' => 2,
'other_refund_order' => 3,
'al_refund_order' => 4,
'wx_refund_order' => 5,
'mec_refund_order' => 6,
];
} else {
asort($res);
}
return $res;
}
/**
* 获取支付(按照排序)
* @param $merchant_id
* @return array
*/
public function getFindOrder($merchant_id)
{
$res = $this->where(['merchant_id' => $merchant_id])->field('id,merchant_id', true)->find();
$Plug = new Plug();
$result = $Plug->merPlugState([
'merchant_id' => $merchant_id,
'identification_arr' => ['moraleducationcoin']
]);
if (empty($res)) {
$res = [
['cash_refund_order' => 1, 'name' => '现金', 'order' => 1],
['vip_refund_order' => 2, 'name' => '会员余额', 'order' => 2],
['other_refund_order' => 3, 'name' => '其他支付', 'order' => 3],
['al_refund_order' => 4, 'name' => '支付宝', 'order' => 4],
['wx_refund_order' => 5, 'name' => '微信', 'order' => 5],
];
if ($result['moraleducationcoin']) {
$res[] = ['mec_refund_order' => 6, 'name' => '德育币', 'order' => 6];
}
} else {
$arr = [];
foreach ($res as $key => $val) {
$arr[] = [
$key => $val,
'order' => $val
];
}
$arr = ascSortByFields($arr, 'order');
$res = [];
foreach ($arr as $key => &$v) {
$v['order'] = intval($key + 1);
if (isset($v['cash_refund_order'])) {
$v['name'] = '现金';
}
if (isset($v['vip_refund_order'])) {
$v['name'] = '会员余额';
}
if (isset($v['other_refund_order'])) {
$v['name'] = '其他支付';
}
if (isset($v['al_refund_order'])) {
$v['name'] = '支付宝';
}
if (isset($v['wx_refund_order'])) {
$v['name'] = '微信';
}
if ($result['moraleducationcoin'] && isset($v['mec_refund_order'])) {
$v['name'] = '德育币';
}
if ($v['name']) {
$res[] = $v;
}
}
}
return $res;
}
}