|
|
@@ -122,19 +122,19 @@ class User extends AuthController
|
|
|
public function give_agent_level($uid = 0)
|
|
|
{
|
|
|
if (!$uid) return $this->failed('缺少参数');
|
|
|
- $is_franchisee = User::where('uid', $uid)->value('is_franchisee');
|
|
|
+ $is_franchisee = \app\admin\model\user\User::where('uid', $uid)->value('is_franchisee');
|
|
|
if ($is_franchisee == 0){
|
|
|
$this->failed('非同盟商无法修改代理等级');
|
|
|
}
|
|
|
$level = AgentLevel::getUserAgentLevel($uid);
|
|
|
- //获取当前会员等级
|
|
|
+ //获取当前代理会员等级
|
|
|
if ($level === false)
|
|
|
$grade = 0;
|
|
|
else
|
|
|
$grade = AgentLevel::getUserAgentLevelInfo($level, 'grade');
|
|
|
- //查询高于当前会员的所有会员等级
|
|
|
- $systemLevelList = SystemUserLevel::where('grade', '>', $grade)->where(['is_show' => 1, 'is_del' => 0])->field(['name', 'id'])->select();
|
|
|
- $field[] = Form::select('level_id', '会员等级')->setOptions(function () use ($systemLevelList) {
|
|
|
+ //查询高于当前代理会员的所有代理等级
|
|
|
+ $systemLevelList = SystemUserAgentLevel::where('grade', '>', $grade)->where(['is_show' => 1, 'is_del' => 0])->field(['name', 'id'])->select();
|
|
|
+ $field[] = Form::select('agent_level_id', '代理会员等级')->setOptions(function () use ($systemLevelList) {
|
|
|
$menus = [];
|
|
|
foreach ($systemLevelList as $menu) {
|
|
|
$menus[] = ['value' => $menu['id'], 'label' => $menu['name']];
|
|
|
@@ -334,20 +334,20 @@ class User extends AuthController
|
|
|
public function save_give_agent_level($uid = 0)
|
|
|
{
|
|
|
if (!$uid) return Json::fail('缺少参数');
|
|
|
- list($level_id) = Util::postMore([
|
|
|
- ['level_id', 0],
|
|
|
+ list($agent_level_id) = Util::postMore([
|
|
|
+ ['agent_level_id', 0],
|
|
|
], $this->request, true);
|
|
|
- //查询当前选择的会员等级
|
|
|
- $systemLevel = SystemUserAgentLevel::where(['is_show' => 1, 'is_del' => 0, 'id' => $level_id])->find();
|
|
|
- if (!$systemLevel) return Json::fail('您选择赠送的会员等级不存在!');
|
|
|
- //检查是否拥有此会员等级
|
|
|
- $level = \app\admin\model\user\UserAgentLevel::where(['uid' => $uid, 'level_id' => $level_id, 'is_del' => 0])->field('is_forever')->find();
|
|
|
- if ($level) if (!$level['is_forever'] ) return Json::fail('此用户已有该会员等级,无法再次赠送');
|
|
|
+ //查询当前选择的代理会员等级
|
|
|
+ $systemLevel = SystemUserAgentLevel::where(['is_show' => 1, 'is_del' => 0, 'id' => $agent_level_id])->find();
|
|
|
+ if (!$systemLevel) return Json::fail('您选择赠送的代理会员等级不存在!');
|
|
|
+ //检查是否拥有此代理会员等级
|
|
|
+ $level = \app\admin\model\user\UserAgentLevel::where(['uid' => $uid, 'level_id' => $agent_level_id, 'is_del' => 0])->field('is_forever')->find();
|
|
|
+ if ($level) if (!$level['is_forever'] ) return Json::fail('此用户已有该代理会员等级,无法再次赠送');
|
|
|
//设置会员过期时间
|
|
|
// $add_valid_time = (int)$systemLevel->valid_date * 86400;
|
|
|
UserModel::commitTrans();
|
|
|
try {
|
|
|
- //保存会员信息
|
|
|
+ //保存代理会员信息
|
|
|
$res = \app\admin\model\user\UserAgentLevel::create([
|
|
|
'is_forever' => $systemLevel->is_forever,
|
|
|
'status' => 1,
|
|
|
@@ -355,14 +355,14 @@ class User extends AuthController
|
|
|
'grade' => $systemLevel->grade,
|
|
|
'uid' => $uid,
|
|
|
'add_time' => time(),
|
|
|
- 'level_id' => $level_id,
|
|
|
+ 'level_id' => $agent_level_id,
|
|
|
'discount' => $systemLevel->discount,
|
|
|
// 'valid_time' => $systemLevel->discount ? $add_valid_time + time() : 0,
|
|
|
- 'mark' => '尊敬的用户【' . UserModel::where('uid', $uid)->value('nickname') . '】在' . date('Y-m-d H:i:s', time()) . '赠送代理会员等级成为' . $systemLevel['name'] . '会员',
|
|
|
+ 'mark' => '尊敬的用户【' . UserModel::where('uid', $uid)->value('nickname') . '】在' . date('Y-m-d H:i:s', time()) . '赠送代理会员等级成为' . $systemLevel['name'] . '代理会员',
|
|
|
]);
|
|
|
|
|
|
//提取等级任务并记录完成情况
|
|
|
- $levelIds = [$level_id];
|
|
|
+ $levelIds = [$agent_level_id];
|
|
|
$lowGradeLevelIds = SystemUserAgentLevel::where('grade', '<', $systemLevel->grade)->where(['is_show' => 1, 'is_del' => 0])->column('id', 'id');
|
|
|
if (count($lowGradeLevelIds)) $levelIds = array_merge($levelIds, $lowGradeLevelIds);
|
|
|
// $taskIds = SystemUserTask::where('level_id', 'in', $levelIds)->column('id', 'id');
|
|
|
@@ -370,7 +370,8 @@ class User extends AuthController
|
|
|
// foreach ($taskIds as $id) {
|
|
|
// $inserValue[] = ['uid' => $uid, 'task_id' => $id, 'status' => 1, 'add_time' => time()];
|
|
|
// }
|
|
|
- $res = $res && UserModel::where('uid', $uid)->update(['level' => $level_id]);
|
|
|
+ // 更新用户表中的代理等级字段,而不是普通会员等级字段
|
|
|
+ $res = $res && UserModel::where('uid', $uid)->update(['agent_level' => $agent_level_id]);
|
|
|
// if ($inserValue) $res && UserTaskFinish::insertAll($inserValue);
|
|
|
if ($res) {
|
|
|
UserModel::commitTrans();
|