|
|
@@ -250,6 +250,12 @@ class UserController extends BaseController {
|
|
|
if ($maxDecId == $userDecId) {
|
|
|
$isMax = true;
|
|
|
}
|
|
|
+
|
|
|
+ // 是否有未完成的BD类型的分期订单
|
|
|
+ $stage = Instalment::getOneStage($userId, 'BD');
|
|
|
+ // 分期的总期数
|
|
|
+ $instalment = intval(Cache::getSystemConfig()['instalment']['VALUE'] ?? 3);
|
|
|
+
|
|
|
// 如果用户已经是最高级别,则只展示用户信息
|
|
|
$userInfo = [
|
|
|
'DEC_NAME' => $baseInfo['DEC_LV_NAME'], // 用户级别中文
|
|
|
@@ -258,6 +264,7 @@ class UserController extends BaseController {
|
|
|
'ADD_AT' => date('Y-m-d', $baseInfo['CREATED_AT']), // 加入时间
|
|
|
'IS_OBSERVE' => $isObserve, // 是否是观察期 true为是观察期
|
|
|
'IS_MAX' => $isMax, // 是否已是最大级别 最大级别不需要判断报单总PV是多少 只展示基本信息
|
|
|
+ 'INSTALMENT' => $stage == 0 && $stage == $instalment,
|
|
|
];
|
|
|
|
|
|
// 如果是最高级别了,则无需升级
|
|
|
@@ -306,6 +313,10 @@ class UserController extends BaseController {
|
|
|
|
|
|
// 会员升级管理
|
|
|
public function actionUpgrade() {
|
|
|
+ $isMax = \Yii::$app->request->request('isMax');
|
|
|
+ $userNumber = \Yii::$app->request->request('userName');
|
|
|
+ $baseInfo = Info::baseInfoZhByUserName($userNumber);
|
|
|
+
|
|
|
$isSwitchUpgrade = Config::find()
|
|
|
->where("CONFIG_NAME='isOpenUpgrade'")
|
|
|
->asArray()
|
|
|
@@ -341,6 +352,23 @@ class UserController extends BaseController {
|
|
|
$levelName = $decLevels[$v['LEVEL_ID']]['LEVEL_NAME'] ?? '';
|
|
|
$allDecPackage[$k]['LEVEL_NAME'] = $levelName;
|
|
|
}
|
|
|
+
|
|
|
+ // 是否有未完成的BD类型的分期订单
|
|
|
+ $stage = Instalment::getOneStage($baseInfo['ID'], 'BD');
|
|
|
+ // 分期的总期数
|
|
|
+ $instalment = intval(Cache::getSystemConfig()['instalment']['VALUE'] ?? 3);
|
|
|
+ // 会员已经是顶级,处理分期订单
|
|
|
+ // 如果分期未完成,切已经升级到顶级,则商品列表只返回分期商品
|
|
|
+ if ($isMax) {
|
|
|
+ if (!$stage || ($stage >= $instalment)) {
|
|
|
+ $stage = 100;
|
|
|
+ } else {
|
|
|
+ $stage += 1;
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ $stage += 1;
|
|
|
+ }
|
|
|
+
|
|
|
//所有自选商品
|
|
|
$isDecReg = Cache::getSystemConfig()['isDecReg']['VALUE'];
|
|
|
$isDec = User::getEnCodeInfo(\Yii::$app->user->id)['IS_DEC'];
|
|
|
@@ -353,9 +381,9 @@ class UserController extends BaseController {
|
|
|
if($isStudio==1){
|
|
|
$query_condition.= " OR FIND_IN_SET(3,GIFT_TYPE)>0";
|
|
|
}
|
|
|
- $query_condition.= ")";
|
|
|
+ $query_condition.= ") AND ((INSTALMENT = 0) OR (INSTALMENT = :INSTALMENT))";
|
|
|
|
|
|
- $allGoods = ShopGoods::find()->where("STATUS=1 AND CATEGORY_TYPE=1 " . $query_condition)->orderBy('SORT ASC')->asArray()->all();
|
|
|
+ $allGoods = ShopGoods::find()->where("STATUS=1 AND CATEGORY_TYPE=1 " . $query_condition, [':INSTALMENT' => $stage])->orderBy('SORT ASC')->asArray()->all();
|
|
|
foreach ($allGoods as &$goods) {
|
|
|
$goods['TAX'] = Tool::calculateTax($goods['SELL_PRICE'], $goods['TAX_RATE']);
|
|
|
}
|