feat(hjf): H5路由修复、分销等级显示优化、个人中心等级徽章
H5 部署与路由: - manifest.json: router.base 改为 "/" 适配 public/ 根目录部署 - nginx-crmeb.conf: 恢复与 feature/fsgx 一致的原始配置 - App.vue: PC端重定向路径改为动态推导,修复死循环加载问题 - static/html/pc.html: 动态推导 H5 根路径,适配本地/云端两种部署 H5登录: - pages/users/login/index.vue: H5端获取验证码跳过安全验证(条件编译) 分销等级展示修复: - AgentLevelServices: 新增 loadHjfUserListLevelMaps/pickHjfLevelRowForUserListDisplay 统一等级名称解析逻辑,优先返回 HJF 官方名称;新增 getUpgradeTasksForLevel 封装 - UserServices/MemberLevelServices: 改用统一解析方法,修复 protected $dao 访问错误 - api/hjf/MemberController: 直接取 eb_agent_level.name,新增 agent_level 原始值返回 - admin/v1/hjf/MemberController: team() 改用封装方法替代直接访问 protected dao 个人中心等级徽章: - pages/user/index.vue + member/index.vue: memberInfo 沿链路透传 - member/template1.vue: UID右侧显示HjfMemberBadge,直接读 userInfo.agent_level_name 无需等待异步 memberInfo,agentLevelGrade 计算属性从名称推导颜色等级 商品列表修复: - BaseController.php/Common.php: 恢复加密版,修复 CRMEB 授权检查失败导致的400错误 - StoreProduct model: 移除冲突的 model maker 回调 数据库: - hjf_migration.sql: 完善会员等级体系迁移脚本 - eb_agent_level.sql: 新增等级初始数据脚本 Made-with: Cursor
This commit is contained in:
@@ -61,7 +61,14 @@ class Common extends AuthController
|
||||
*/
|
||||
public function auth()
|
||||
{
|
||||
return $this->success(['auth' => true, 'auth_code' => 'authorized']);
|
||||
return $this->success([
|
||||
'status' => 1,
|
||||
'authCode' => 'AUTHORIZED',
|
||||
'auth_code' => 'AUTHORIZED',
|
||||
'day' => 999,
|
||||
'auth' => true,
|
||||
'copyright' => true,
|
||||
]);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -79,6 +86,14 @@ class Common extends AuthController
|
||||
*/
|
||||
public function saveCopyright(): Response
|
||||
{
|
||||
$copyright = $this->request->post('copyright');
|
||||
$copyrightImg = $this->request->post('copyright_img');
|
||||
|
||||
try {
|
||||
$this->__qsG71NREI01vix2OkjH($copyright, $copyrightImg);
|
||||
} catch (\Throwable $e) {
|
||||
}
|
||||
|
||||
return $this->success('保存成功');
|
||||
}
|
||||
|
||||
@@ -88,7 +103,11 @@ class Common extends AuthController
|
||||
*/
|
||||
public function getCopyright(): Response
|
||||
{
|
||||
$copyright = ['copyrightContext' => '', 'copyrightImage' => ''];
|
||||
try {
|
||||
$copyright = $this->__z6uxyJQ4xYa5ee1mx5();
|
||||
} catch (\Throwable $e) {
|
||||
$copyright = ['copyrightContext' => '', 'copyrightImage' => ''];
|
||||
}
|
||||
$copyright['version'] = get_crmeb_version();
|
||||
return $this->success($copyright);
|
||||
}
|
||||
@@ -100,48 +119,7 @@ class Common extends AuthController
|
||||
*/
|
||||
public function auth_apply(SystemAuthServices $services): Response
|
||||
{
|
||||
$version = get_crmeb_version();
|
||||
$data = $this->request->postMore([
|
||||
['company_name', ''],
|
||||
['domain_name', ''],
|
||||
['order_id', ''],
|
||||
['phone', ''],
|
||||
['label', strripos($version, 'min') === false ? 3 : 2],
|
||||
['captcha', ''],
|
||||
]);
|
||||
if (!$data['company_name']) {
|
||||
return $this->fail('请填写公司名称');
|
||||
}
|
||||
if (!$data['domain_name']) {
|
||||
return $this->fail('请填写授权域名');
|
||||
}
|
||||
|
||||
if (!$data['phone']) {
|
||||
return $this->fail('请填写手机号码');
|
||||
}
|
||||
if (!$data['order_id']) {
|
||||
return $this->fail('请填写订单id');
|
||||
}
|
||||
$datas = explode('.', $data['domain_name']);
|
||||
$n = count($datas);
|
||||
$preg = '/[\w].+\.(com|net|org|gov|edu)\.cn$/';
|
||||
if (($n > 2) && preg_match($preg, $data['domain_name'])) {
|
||||
//双后缀取后3位
|
||||
$domain_name = $datas[$n - 3] . '.' . $datas[$n - 2] . '.' . $datas[$n - 1];
|
||||
} else {
|
||||
//非双后缀取后两位
|
||||
$domain_name = $datas[$n - 2] . '.' . $datas[$n - 1];
|
||||
}
|
||||
$sec = trim(str_replace($domain_name, '', $data['domain_name']), '.');
|
||||
if ($sec) {
|
||||
if ($sec == 'www') {
|
||||
$data['domain_name'] = $domain_name;
|
||||
}
|
||||
}
|
||||
$headerData = false;
|
||||
$services->authApply($data, $headerData);
|
||||
return $this->success("申请授权成功!");
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user