瀏覽代碼

登录优化-切换系统更改

Perperon 3 月之前
父節點
當前提交
39a77bc306
共有 18 個文件被更改,包括 195 次插入33 次删除
  1. 19 0
      projects-service/src/main/java/com/rtrh/projects/modules/account/mapper/CommUserMapper.java
  2. 29 0
      projects-service/src/main/java/com/rtrh/projects/modules/account/mapper/MeunInfoMapper.java
  3. 46 0
      projects-service/src/main/java/com/rtrh/projects/modules/account/mapper/SecUserMapper.java
  4. 1 0
      projects-service/src/main/java/com/rtrh/projects/modules/account/service/CommUserService.java
  5. 15 1
      projects-service/src/main/java/com/rtrh/projects/modules/account/service/impl/CommUserServiceImpl.java
  6. 16 0
      projects-service/src/main/java/com/rtrh/projects/modules/rolemeun/mapper/SecRoleMapper.java
  7. 4 0
      projects-service/src/main/java/com/rtrh/projects/modules/rolemeun/servicel/SecRoleservice.java
  8. 20 4
      projects-service/src/main/java/com/rtrh/projects/modules/rolemeun/servicel/impl/SecRoleserviceimpl.java
  9. 2 0
      projects-service/src/main/java/com/rtrh/projects/modules/system/service/SecUserService.java
  10. 10 0
      projects-service/src/main/java/com/rtrh/projects/modules/system/service/impl/SecUserServiceImpl.java
  11. 4 3
      projects/src/main/java/com/rtrh/projects/outapi/controller/AuthApiController.java
  12. 6 2
      projects/src/main/java/com/rtrh/projects/web/controller/passport/LoginController.java
  13. 2 1
      projects/src/main/java/com/rtrh/projects/web/controller/passport/api/SwitchApiController.java
  14. 7 7
      projects/src/main/resources/boot/development/WebSite.json
  15. 6 6
      projects/src/main/resources/boot/release/WebSite.json
  16. 0 1
      projects/src/main/resources/rtrh-crypto.xml
  17. 7 7
      projects/src/main/webapp/asset/WebSite.js
  18. 1 1
      projects/src/main/webapp/vmodules/top.jsp

+ 19 - 0
projects-service/src/main/java/com/rtrh/projects/modules/account/mapper/CommUserMapper.java

@@ -0,0 +1,19 @@
+package com.rtrh.projects.modules.account.mapper;
+
+import com.rtrh.core.repository.mybatis.MyBatisRepository;
+import com.rtrh.projects.modules.account.po.CommUser;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
+
+/**
+ * @author dupengcheng
+ * @date 2025/1/8
+ * @apiNote
+ */
+@MyBatisRepository
+public interface CommUserMapper {
+
+    @Select("select id,login_name as loginname,password,salt,create_time as createTime,enabled,locked,update_time as updateTime from comm_user where login_name = #{fgwLoginName}")
+    CommUser findCommUserByFgwLoginName(@Param("fgwLoginName") String fgwLoginName);
+
+}

+ 29 - 0
projects-service/src/main/java/com/rtrh/projects/modules/account/mapper/MeunInfoMapper.java

@@ -0,0 +1,29 @@
+package com.rtrh.projects.modules.account.mapper;
+
+import com.rtrh.core.repository.mybatis.MyBatisRepository;
+import com.rtrh.projects.modules.rolemeun.po.MeunInfo;
+import org.apache.ibatis.annotations.Select;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @author dupengcheng
+ * @date 2025/1/8
+ * @apiNote
+ */
+@MyBatisRepository
+public interface MeunInfoMapper {
+
+    @Select("select id,\n" +
+            "code,\n" +
+            "title,\n" +
+            "ismenu,\n" +
+            "lastcode,\n" +
+            "remark,\n" +
+            "type,\n" +
+            "sort_index as sortIndex,\n" +
+            "logic_delete_flag as logicDeleteFlag,\n" +
+            "kind from menu_info where lastcode=#{lastcode}")
+    List<MeunInfo> findByParam(Map<String,Object> param);
+}

+ 46 - 0
projects-service/src/main/java/com/rtrh/projects/modules/account/mapper/SecUserMapper.java

@@ -0,0 +1,46 @@
+package com.rtrh.projects.modules.account.mapper;
+
+import com.rtrh.core.repository.mybatis.MyBatisRepository;
+import com.rtrh.projects.modules.system.po.SecUser;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
+
+/**
+ * @author dupengcheng
+ * @date 2025/1/8
+ * @apiNote
+ */
+@MyBatisRepository
+public interface SecUserMapper {
+
+    @Select("select id,\n" +
+            "kind_unit as kindUnit,\n" +
+            "is_unit as isUnit,\n" +
+            "login,\n" +
+            "kind,\n" +
+            "unit_id as unitId,\n" +
+            "depart_id as departId,\n" +
+            "remark,\n" +
+            "create_user_id as createUserId,\n" +
+            "create_time as createTime,\n" +
+            "last_update_user_id as lastUpdateUseerId,\n" +
+            "last_update_time as lastUpdateTime,\n" +
+            "logic_delete_flag as logicDeleteFlag,\n" +
+            "title,\n" +
+            "create_user_name as createUserName,\n" +
+            "last_update_user_name as lastUpdateUserName,\n" +
+            "update_time as updateName,\n" +
+            "password,\n" +
+            "sim_code as simCode,\n" +
+            "status_unit as statusUnit,\n" +
+            "status_proj as statusProj,\n" +
+            "email,\n" +
+            "edit,\n" +
+            "is_lead as isLead,\n" +
+            "job,\n" +
+            "unit_dw_id as UnitDwId,\n" +
+            "is_app as isApp,\n" +
+            "is_pc as isPc,\n" +
+            "status_subject as statusSubject from sec_user where id = #{id}")
+    SecUser findByFgwId(@Param("id") String id);
+}

+ 1 - 0
projects-service/src/main/java/com/rtrh/projects/modules/account/service/CommUserService.java

@@ -18,6 +18,7 @@ public interface CommUserService {
 	
 	CommUser findCommUserById(String id);
 	CommUser findCommUserByLoginname(String loginname);
+	CommUser findCommUserByFgwLoginName(String loginname);
 	CommUser insertCommUser(String loginName, String password) throws UsernameExistException;
 	CommUser updateCommUser(CommUser commUser);
 	CommUser updateLoginName(CommUser commUser)  throws UsernameExistException;

+ 15 - 1
projects-service/src/main/java/com/rtrh/projects/modules/account/service/impl/CommUserServiceImpl.java

@@ -3,6 +3,8 @@ package com.rtrh.projects.modules.account.service.impl;
 import java.util.Date;
 import java.util.List;
 
+import com.rtrh.projects.modules.account.mapper.CommUserMapper;
+import com.rtrh.projects.util.TargetDataSource;
 import org.hibernate.criterion.Order;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -25,7 +27,9 @@ public class CommUserServiceImpl implements CommUserService {
 
 	@Autowired
 	private CommUserDao commUserDao;
-	
+	@Autowired
+	private CommUserMapper commUserMapper;
+
 	@Override
 	public CommUser findCommUserById(String id) {
 		return commUserDao.findById(id);
@@ -40,6 +44,16 @@ public class CommUserServiceImpl implements CommUserService {
 		return commUser;
 	}
 
+	@Override
+	@TargetDataSource(value="secondary")
+	public CommUser findCommUserByFgwLoginName(String loginname) {
+		if(StringUtil.isEmpty(loginname)){
+			return null;
+		}
+		CommUser commUser = commUserMapper.findCommUserByFgwLoginName(loginname);
+		return commUser;
+	}
+
 	@Override
 	public CommUser insertCommUser(String loginName, String password) throws UsernameExistException {
 		if(StringUtil.isEmpty(loginName) || StringUtil.isEmpty(password)){

+ 16 - 0
projects-service/src/main/java/com/rtrh/projects/modules/rolemeun/mapper/SecRoleMapper.java

@@ -2,13 +2,29 @@ package com.rtrh.projects.modules.rolemeun.mapper;
 
 import java.util.List;
 
+import com.rtrh.projects.modules.rolemeun.po.SecRole;
 import org.apache.ibatis.annotations.Param;
 
 import com.rtrh.core.repository.mybatis.MyBatisRepository;
+import org.apache.ibatis.annotations.Select;
 
 @MyBatisRepository
 public interface SecRoleMapper {
 
 	List<String> queryMenuCodeByRoleId(@Param("roleId")String roleId, @Param("menuType")Integer menuType);
 	List<String> queryAllMenuCode(@Param("menuType")Integer menuType);
+
+	@Select("select id,\n" +
+			"code,\n" +
+			"title,\n" +
+			"remark,\n" +
+			"create_user_id as createUserId,\n" +
+			"create_time as createTime,\n" +
+			"last_update_user_id as lastUpdateUserId,\n" +
+			"last_update_time as lastUpdateTime,\n" +
+			"logic_delete_flag as logicDeleteFlag,\n" +
+			"is_app_g as isAppG,\n" +
+			"is_app_f as isAppF\n" +
+			" from sec_role where id = #{fgwId}")
+	SecRole getByFgwId(@Param("fgwId") String fgwId);
 }

+ 4 - 0
projects-service/src/main/java/com/rtrh/projects/modules/rolemeun/servicel/SecRoleservice.java

@@ -28,6 +28,8 @@ public interface SecRoleservice {
 
     SecRole getById(String id);
 
+    SecRole getByFgwId(String id);
+
     /**
      * 通过角色id查询菜单编码
      * @param id
@@ -49,4 +51,6 @@ public interface SecRoleservice {
      * @return
      */
     List<MeunInfo> queryMenuByParent();
+
+    List<MeunInfo> queryMenuByFgwParent();
 }

+ 20 - 4
projects-service/src/main/java/com/rtrh/projects/modules/rolemeun/servicel/impl/SecRoleserviceimpl.java

@@ -1,10 +1,8 @@
 package com.rtrh.projects.modules.rolemeun.servicel.impl;
 
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Date;
-import java.util.List;
+import java.util.*;
 
+import com.rtrh.projects.modules.account.mapper.MeunInfoMapper;
 import com.rtrh.projects.util.TargetDataSource;
 import org.hibernate.criterion.Criterion;
 import org.hibernate.criterion.DetachedCriteria;
@@ -51,6 +49,9 @@ public class SecRoleserviceimpl implements SecRoleservice {
     @Autowired
     private MeunInfoDao meunInfoDao;
 
+    @Autowired
+    private MeunInfoMapper meunInfoMapper;
+
     @Autowired
     private SecRoleMeunDao secRoleMeunDao;
     @Autowired
@@ -189,6 +190,13 @@ public class SecRoleserviceimpl implements SecRoleservice {
         return roleDao.findById(id);
     }
 
+    @Override
+    @TargetDataSource("secondary")
+    public SecRole getByFgwId(String id) {
+
+        return secRoleMapper.getByFgwId(id);
+    }
+
 	@Override
     @TargetDataSource("secondary")
 	public List<String> queryMenuCodesByRoleId(String id, MenuType type) {
@@ -216,4 +224,12 @@ public class SecRoleserviceimpl implements SecRoleservice {
         detachedCriteriaM.add(criterionM);
         return meunInfoDao.find(detachedCriteriaM);
     }
+
+    @Override
+    @TargetDataSource("secondary")
+    public List<MeunInfo> queryMenuByFgwParent() {
+        Map<String,Object> param = new HashMap<>();
+        param.put("lastcode", "1000");
+        return meunInfoMapper.findByParam(param);
+    }
 }

+ 2 - 0
projects-service/src/main/java/com/rtrh/projects/modules/system/service/SecUserService.java

@@ -11,6 +11,8 @@ public interface SecUserService {
 
     SecUser getById(String id);
 
+    SecUser getByFgwId(String id);
+
     SecUser getSecUserByLoginName(String name);
 
     /**

+ 10 - 0
projects-service/src/main/java/com/rtrh/projects/modules/system/service/impl/SecUserServiceImpl.java

@@ -6,11 +6,13 @@ import com.rtrh.common.util.StringUtil;
 import com.rtrh.core.repository.Page;
 import com.rtrh.projects.modules.account.SecurityStaticValue;
 import com.rtrh.projects.modules.account.dao.CommUserDao;
+import com.rtrh.projects.modules.account.mapper.SecUserMapper;
 import com.rtrh.projects.modules.account.po.CommUser;
 import com.rtrh.projects.modules.system.dao.SecUserDao;
 import com.rtrh.projects.modules.system.enums.UserKindUnitEnum;
 import com.rtrh.projects.modules.system.po.SecUser;
 import com.rtrh.projects.modules.system.service.SecUserService;
+import com.rtrh.projects.util.TargetDataSource;
 import org.hibernate.criterion.Criterion;
 import org.hibernate.criterion.DetachedCriteria;
 import org.hibernate.criterion.Restrictions;
@@ -25,6 +27,8 @@ public class SecUserServiceImpl implements SecUserService {
     @Autowired
     SecUserDao secUserDao;
     @Autowired
+    SecUserMapper secUserMapper;
+    @Autowired
     CommUserDao commUserDao;
     @Override
     public SecUser getSecUserByJunitId(String id) {
@@ -36,6 +40,12 @@ public class SecUserServiceImpl implements SecUserService {
         return secUserDao.findById(id);
     }
 
+    @Override
+    @TargetDataSource(value="secondary")
+    public SecUser getByFgwId(String id) {
+        return secUserMapper.findByFgwId(id);
+    }
+
     @Override
     public SecUser getSecUserByLoginName(String name) {
         return secUserDao.getSecUserByLoginName(name);

+ 4 - 3
projects/src/main/java/com/rtrh/projects/outapi/controller/AuthApiController.java

@@ -116,21 +116,22 @@ public class AuthApiController extends BaseOutApiController {
 		try {
 			//对token进行解密得到用户名
 			String username = JwtUtil.validateToken(token);
-			CommUser commUser = commUserService.findCommUserByLoginname(username);
+			//查询发改委数据库中是否存在该用户
+			CommUser commUser = commUserService.findCommUserByFgwLoginName(username);
 			if(null == commUser){
 				result.setCode(ResultCode.LOGIN_FAIL);
 			}
 			if(CommUserChecker.isDisabledUser(commUser)){
 				result.setCode(ResultCode.ACCOUNT_DISABLE);
 			}
-			SecUser user = secUserService.getById(commUser.getId());
+			SecUser user = secUserService.getByFgwId(commUser.getId());
 			String tokenApp = jwtUtils.createToken(user);
 			result.setData("token",tokenApp);
 
 			Boolean isLead=user.getIsLead()==null?false:user.getIsLead();
 
 			String roleCode="";
-			SecRole role=secRoleservice.getById(user.getKind());
+			SecRole role=secRoleservice.getByFgwId(user.getKind());
 			if(null!=role){
 				roleCode=role.getCode();
 				result.setData("roleCode",roleCode);

+ 6 - 2
projects/src/main/java/com/rtrh/projects/web/controller/passport/LoginController.java

@@ -6,6 +6,7 @@ import java.util.Objects;
 
 import com.rtrh.projects.modules.problem.vo.QuestionQueryVO;
 import com.rtrh.projects.modules.rolemeun.dao.SecRoleDao;
+import com.rtrh.projects.modules.rolemeun.mapper.SecRoleMapper;
 import com.rtrh.projects.modules.rolemeun.po.MeunInfo;
 import com.rtrh.projects.modules.rolemeun.po.SecRole;
 import com.rtrh.projects.modules.system.enums.UserKindUnitEnum;
@@ -140,11 +141,13 @@ public class LoginController extends BaseController {
 		}
 
 		//主管单位
-		SecRole role=secRoleDao.findById(curUser.getKind());
+		//SecRole role=secRoleDao.findById(curUser.getKind());
+		SecRole role=roleservice.getByFgwId(curUser.getKind());
 		if(role!=null&&role.getCode().equals("007")) {
 			model.put("isShowDialog",1);
 			QuestionQueryVO queryVO = new QuestionQueryVO();
 			queryVO.setNoStatus(true);
+			//如果需要,请重写该方法,调用发改委查询数据
 			Page pageData=taskRecordsService.pageQueryQuestionList(new Page(), getCurUser().getLoginUser(), queryVO);
 			if(pageData.getTotalCount()>0) {
 				model.put("isDialog", 1);
@@ -163,7 +166,8 @@ public class LoginController extends BaseController {
 
 
 		//查询资金来源
-		List<MeunInfo> listMenu=roleservice.queryMenuByParent();
+		//List<MeunInfo> listMenu=roleservice.queryMenuByParent();
+		List<MeunInfo> listMenu=roleservice.queryMenuByFgwParent();
 		// if(Objects.equals("admin", curUser.getLoginName())) {
 		// 	List<String> list = roleservice.queryAllMenuCode(MenuType.PC);
 		// 	model.put("menuCode", CollectionUtil.isNotEmpty(list)?String.join(",", list):"");

+ 2 - 1
projects/src/main/java/com/rtrh/projects/web/controller/passport/api/SwitchApiController.java

@@ -15,6 +15,7 @@ import org.apache.http.util.EntityUtils;
 import org.springframework.web.bind.annotation.*;
 
 import java.io.IOException;
+import java.util.Map;
 import java.util.ResourceBundle;
 
 @RestController
@@ -28,7 +29,7 @@ public class SwitchApiController extends BaseController {
      * @return
      */
     @PostMapping("/toFgw")
-    public Object switchToFgw() {
+    public Object switchToFgw(@RequestBody Map<String, Object> params) {
         // 获取当前用户信息
         TeamShiroUser curUser = getCurUser();
         // 使用jwt生成token

+ 7 - 7
projects/src/main/resources/boot/development/WebSite.json

@@ -1,10 +1,10 @@
 {
 	"version": "20200914",
-	"domain": "/projects",
-	"site": "/projects",
-	"httpSite":"http://127.0.0.1:8080/projects/",
-	"httpsSite":"http://127.0.0.1:8080/projects/",
-	"asset": "/projects/asset",
-	"file": "http://139.155.7.62:9080/projects/",
-	"htmlToPdf": "http://127.0.0.1:8080/projects/"
+	"domain": "/projects_g",
+	"site": "/projects_g",
+	"httpSite":"http://127.0.0.1:8080/projects_g/",
+	"httpsSite":"http://127.0.0.1:8080/projects_g/",
+	"asset": "/projects_g/asset",
+	"file": "http://139.155.7.62:9080/projects_g/",
+	"htmlToPdf": "http://127.0.0.1:8080/projects_g/"
 }

+ 6 - 6
projects/src/main/resources/boot/release/WebSite.json

@@ -1,9 +1,9 @@
 {
 		"version": "20200914",
-		"domain": "/projects",
-		"site": "/projects",
-		"httpSite":"http://60.13.147.116:9080/projects/",
-		"httpsSite":"http://60.13.147.116:9080/projects/",
-		"asset": "/projects/asset",
-		"file": "http://60.13.147.116:9080/projects"
+		"domain": "/projects_g",
+		"site": "/projects_g",
+		"httpSite":"http://60.13.147.116:9080/projects_g/",
+		"httpsSite":"http://60.13.147.116:9080/projects_g/",
+		"asset": "/projects_g/asset",
+		"file": "http://60.13.147.116:9080/projects_g"
 }

+ 0 - 1
projects/src/main/resources/rtrh-crypto.xml

@@ -18,7 +18,6 @@
 				<value>/outApi/projects/statics/yearReport</value>
 				<value>/outApi/subInfoExport/**</value>
 				<value>/outApi/auth/gxjLogin</value>
-				<value>/api/app/switch/toFgw</value>
 				<value>/pdfHtml/**</value>
 			</list>
 		</property>

+ 7 - 7
projects/src/main/webapp/asset/WebSite.js

@@ -1,10 +1,10 @@
 WebSite = {
-  "httpsSite": "http://127.0.0.1:8080/projects/",
-  "site": "/projects",
-  "file": "http://139.155.7.62:9080/projects/",
-  "domain": "/projects",
-  "htmlToPdf": "http://127.0.0.1:8080/projects/",
-  "asset": "/projects/asset",
+  "httpsSite": "http://127.0.0.1:8080/projects_g/",
+  "site": "/projects_g",
+  "file": "http://139.155.7.62:9080/projects_g/",
+  "domain": "/projects_g",
+  "htmlToPdf": "http://127.0.0.1:8080/projects_g/",
+  "asset": "/projects_g/asset",
   "version": "20200914",
-  "httpSite": "http://127.0.0.1:8080/projects/"
+  "httpSite": "http://127.0.0.1:8080/projects_g/"
 };

+ 1 - 1
projects/src/main/webapp/vmodules/top.jsp

@@ -128,7 +128,7 @@
                 window.parent.postMessage({collapse: this.collapse}, "*");
             },
             changeSystem() {
-                App.postJson("api/app/switch/toFgw", {}, function (res) {
+                App.postJson("/api/app/switch/toFgw", {type:'0'}, function (res) {
                     console.log(res);
                     if(res.code ===200){
                         var targetUrl = res.msg+"/index";