init: import production code mss.nahaichuan.com (exclude Runtime/Uploads/backups/logs)

这个提交包含在:
Developer
2026-10-30 10:18:50 +08:00
当前提交 1f3e0ce2f6
共有 9291 个文件被更改,包括 1776674 次插入 和 0 次删除

查看文件

@@ -0,0 +1,137 @@
<?php
namespace Common\Model;
//[1.8.20]
use Common\Business\Store;
use Common\Business\VipInfo;
class VipAndPlusViewModel extends BaseViewModel
{
public $viewFields = array(
'RetailVip' => array(
'_table' => 'ls_retail_vip',
'id', 'name', 'nickname', 'mobile_phone', 'plus_type', 'card_key', 'balance', 'integral', 'grade_integral', 'addtime' => 'add_time', 'merchantid', 'storeid' => 'store_id', 'status', 'plus_id', 'guideid',
'_type' => 'LEFT'
),
'RetailPlusVip' => array(
'_table' => 'ls_retail_plus_vip',
'vip_id', 'xcx_vip_id', 'start_time', 'end_time', 'storeid', 'state', 'addtime',
'_on' => 'RetailPlusVip.id = RetailVip.plus_id',
),
);
/**
* 多条排序查询(select)ram $map
* @param $map
* @param string $field
* @param string $order
* @param string $page
* @param string $limit
* @return bool|mixed
*/
public function getOrderSelect($map, $field = '*', $order = 'id desc', $page = '', $limit = '')
{
if (!$map) {
return false;
}
if (!$page || !$limit) {
$select = $this->field($field)->where($map)->order($order)->select();
} else {
$select = $this->field($field)->where($map)->order($order)->page($page, $limit)->select();
}
return $select;
}
/**
* 处理多条数据
* @param array $vip_data 原始数据
* @return array $vip_data 原始数据
*/
public function handleData($vip_data)
{
if (!$vip_data) {
return $vip_data;
}
// 实例化模型
$Store = new Store();
$store_name = [];
$RetailVipLabelModel = new RetailVipLabelModel();
$VipInfo = new VipInfo();
// 处理数据
foreach ($vip_data as $key => &$val) {
$val['index'] = $key + 1;
// 会员名称
$val['name'] = $val['name'] ? $val['name'] : '';
// 会员昵称
$val['nickname'] = $val['nickname'] ? $val['nickname'] : '';
$val['name'] = $val['name'] ? $val['name'] : $val['nickname'];
// 会员手机号
$val['mobile_phone'] = $val['mobile_phone'] ? $val['mobile_phone'] : '';
// 会员实体卡
$val['card_key'] = $val['card_key'] ? $val['card_key'] : '';
// 门店名称(普通会员)
$val['store_name'] = $Store->getStoreName($val['store_id'], $store_name);
$val['plus_store_name'] = $val['store_name'];
// 等级名称
if ($val['plus_type'] == 3) {
$grade_info = $VipInfo->singleVipGrade([
'merchant_id' => $val['merchantid'],
'grade_integral' => $val['grade_integral'],
'get_default' => true,
]);
$val['grade'] = $grade_info['grade_name'];
$val['grade_id'] = $grade_info['id'];
} else {
$val['grade'] = "Plus会员";
$val['grade_id'] = 0;
}
// 余额
$val['balance'] = $val['balance'] ? floatval($val['balance']) : 0;
// 积分
$val['integral'] = $val['integral'] ? floatval($val['integral']) : 0;
// 时间
$val['add_time'] = date('Y-m-d', $val['plus_type'] == 2 ? $val['addtime'] : $val['add_time']);
unset($val['addtime']);
// 状态
switch ($val['status']) {
case 1:
$val['status_name'] = '正常';
break;
case 2:
$val['status_name'] = '已删除';
break;
case 3:
$val['status_name'] = '冻结';
break;
case 4:
$val['status_name'] = '挂失';
break;
default:
$val['status_name'] = '未知';
}
if ($val['end_time']) {
$val['end_time'] = date('Y-m-d H:i:s', $val['end_time']);
} else {
$val['end_time'] = '';
}
//会员标签
$label_map = [
'rvwl.is_del' => 1,
'rvl.is_del' => 1,
'vid' => $val['id'],
];
$label_field = [
'rvl.name',
];
$val['label_list'] = $RetailVipLabelModel->getUserLabelList($label_map, $label_field);
}
return $vip_data;
}
}