diff --git a/dl-module-base/src/main/java/cn/iocoder/yudao/module/app/company/controller/CompanyAPI.java b/dl-module-base/src/main/java/cn/iocoder/yudao/module/app/company/controller/CompanyAPI.java
index 09549e56..8c74e024 100644
--- a/dl-module-base/src/main/java/cn/iocoder/yudao/module/app/company/controller/CompanyAPI.java
+++ b/dl-module-base/src/main/java/cn/iocoder/yudao/module/app/company/controller/CompanyAPI.java
@@ -1,6 +1,7 @@
 package cn.iocoder.yudao.module.app.company.controller;
 
 import cn.iocoder.yudao.framework.common.pojo.CommonResult;
+import cn.iocoder.yudao.framework.tenant.core.aop.TenantIgnore;
 import cn.iocoder.yudao.module.company.entity.Company;
 import cn.iocoder.yudao.module.company.service.CompanyService;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
diff --git a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/jx/controller/app/AppJxAuthController.java b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/jx/controller/app/AppJxAuthController.java
new file mode 100644
index 00000000..6bad6783
--- /dev/null
+++ b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/jx/controller/app/AppJxAuthController.java
@@ -0,0 +1,106 @@
+package cn.iocoder.yudao.module.jx.controller.app;
+
+import cn.iocoder.yudao.framework.common.pojo.CommonResult;
+import cn.iocoder.yudao.framework.security.core.LoginUser;
+import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils;
+import cn.iocoder.yudao.module.jx.domain.DriveSchoolCoach;
+import cn.iocoder.yudao.module.jx.domain.DriveSchoolInfo;
+import cn.iocoder.yudao.module.jx.mapper.DriveSchoolCoachMapper;
+import cn.iocoder.yudao.module.jx.service.IDriveSchoolInfoService;
+import cn.iocoder.yudao.module.system.api.user.AdminUserApi;
+import cn.iocoder.yudao.module.system.dal.dataobject.user.AdminUserDO;
+import cn.iocoder.yudao.module.system.service.permission.PermissionService;
+import cn.iocoder.yudao.module.system.service.user.AdminUserService;
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.annotation.Resource;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Set;
+
+import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
+
+@Tag(name = "管理后台 - 认证")
+@RestController
+@RequestMapping("/jx/auth")
+@Validated
+@Slf4j
+public class AppJxAuthController {
+
+
+    @Resource
+    private AdminUserService userService;
+    @Resource
+    private PermissionService permissionService;
+    @Resource
+    private DriveSchoolCoachMapper driveSchoolCoachMapper;
+    @Resource
+    private IDriveSchoolInfoService driveSchoolInfoService;
+    @Resource
+    private AdminUserApi userApi;
+
+
+
+
+    /**
+     * 获取Jx用户信息
+     *
+     * @return 用户信息
+     */
+    @GetMapping("/getJxInfo")
+    public CommonResult getJxInfo()
+    {
+        // 获取当前用户信息
+//        Long userId = SecurityFrameworkUtils.getLoginUserId();
+//        AdminUserRespDTO sysUser = userApi.getUser(userId);
+//        Long deptId = sysUser.getDeptId();
+
+        LoginUser user = SecurityFrameworkUtils.getLoginUser();
+        // 获取当前登录用户角色编码
+        Set<String> roles = permissionService.getRolePermission(user.getId());
+        //获取驾校的
+        Long userId = user.getId();
+        AdminUserDO sysUser = userService.getUser(userId);
+        Long deptId = sysUser.getDeptId();
+
+        String phonenumber = sysUser.getMobile();
+        //根据手机号查询驾校教练
+        DriveSchoolCoach driveSchoolCoach = driveSchoolCoachMapper.selectByPhonenumber(phonenumber);
+
+        if (ObjectUtils.isNotEmpty(driveSchoolCoach)){
+            sysUser.setAvatar(driveSchoolCoach.getImage());
+        }
+        DriveSchoolInfo driveSchoolInfo = driveSchoolInfoService.getSchoolInfoByDeptId(deptId);
+
+        Map<String,Object> result = new HashMap<>();
+        result.put("user", sysUser);
+        result.put("roles", roles);
+        result.put("schoolInfo", driveSchoolInfo);
+
+        return CommonResult.success(result);
+    }
+
+    /**
+     * 获取App用户信息
+     *
+     * @return 用户信息
+     */
+    @GetMapping("/getAppInfo")
+    public CommonResult<?> getAppInfo()
+    {
+        LoginUser user = SecurityFrameworkUtils.getLoginUser();
+        // 获取当前登录用户角色编码
+        Set<String> roles = permissionService.getRolePermission(user.getId());
+        Map<String,Object> result = new HashMap<>();
+        result.put("user", user);
+        result.put("role", roles);
+        return success(result);
+    }
+
+}
diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/controller/LoginController.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/controller/LoginController.java
index 8108925a..29e9607e 100644
--- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/controller/LoginController.java
+++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/controller/LoginController.java
@@ -62,13 +62,28 @@ public class LoginController {
     @PostMapping("/wxLogin")
     @TenantIgnore
     public CommonResult<?> wxLogin(@RequestBody WxLoginBody wxLoginBody) {
+        // appId
+        String appId = wxConfig.getRepairAppId();
+        //appSecret
+        String appSecret = wxConfig.getRepairAppSecret();
+        //code
+        String appCode = SystemEnum.REPAIR.getCode();
+        if (StrUtil.isNotEmpty(wxLoginBody.getType())) {
+            switch (wxLoginBody.getType()) {
+                case "jx":
+                    appId = wxConfig.getJxAppId();
+                    appSecret = wxConfig.getJxAppSecret();
+                    appCode = SystemEnum.SCHOOL.getCode();
+                    break;
+            }
+        }
         String code = wxLoginBody.getCode();
         //秘钥
         String encryptedIv = wxLoginBody.getEncryptedIv();
         //加密数据
         String encryptedData = wxLoginBody.getEncryptedData();
         //想微信服务器发送请求获取用户信息
-        String url = "https://api.weixin.qq.com/sns/jscode2session?appid=" + wxConfig.getRepairAppId() + "&secret=" + wxConfig.getRepairAppSecret() + "&js_code=" + code + "&grant_type=authorization_code";
+        String url = "https://api.weixin.qq.com/sns/jscode2session?appid=" + appId + "&secret=" + appSecret + "&js_code=" + code + "&grant_type=authorization_code";
         String res = restTemplate.getForObject(url, String.class);
         JSONObject jsonObject = JSONObject.parseObject(res);
         //获取session_key和openid
@@ -86,7 +101,7 @@ public class LoginController {
         if (StringUtils.hasText(decryptResult)) {
             //如果解析成功,获取token
             //查用户(未注册的话自动注册)
-            AdminUserDO adminUserDO = wechatService.wechatLogin(SystemEnum.REPAIR.getCode(),decryptResult,openId,wxLoginBody.getInviteId());
+            AdminUserDO adminUserDO = wechatService.wechatLogin(appCode,decryptResult,openId,wxLoginBody.getInviteId());
             //登录生成token
             AuthLoginRespVO loginVO = loginService.wxLoginByUserId(adminUserDO.getId(),adminUserDO.getUsername());
             Map<String, Object> map = new HashMap<>();
diff --git a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/vo/WxLoginBody.java b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/vo/WxLoginBody.java
index d99b2c38..ada275c2 100644
--- a/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/vo/WxLoginBody.java
+++ b/dl-module-repair/src/main/java/cn/iocoder/yudao/module/app/vo/WxLoginBody.java
@@ -19,6 +19,11 @@ public class WxLoginBody {
      */
     private String encryptedData;
 
+    /**
+     * 小程序类型
+     */
+    private String type;
+
     //邀请码
     private String inviteId;
 }