skjcmanager/skjcmanager-auth/src/main/java/cn/gistack/auth/service/BladeUserDetailsServiceImpl.java
@@ -206,23 +206,23 @@ User loginUserInfo = userInfo.getUser(); //获取解密后的Base64字符串 R<ResultDTO> encryptRes = pwdClient.getDecrypt(loginUserInfo.getSm4iv(), loginUserInfo.getKeyindexs(),loginUserInfo.getEncdata()); if (encryptRes.getCode() != 200){ throw new UserDeniedAuthorizationException("获取密钥失败"); } //解码Base64 String JSONstr = Base64Utils.getBase64Decode(encryptRes.getData().getData()); pwdClient.verify(loginUserInfo.getMaced(),loginUserInfo.getSm4iv(),loginUserInfo.getKeyindexs(),JSONstr,loginUserInfo.getId().toString(),"blade_user"); UserSUPO userSUPO = JSONObject.parseObject(JSONstr, UserSUPO.class); //若登录用户的电话、角色、部门与原加密数据不符,登录失败 if (!(loginUserInfo.getPhone().equals(userSUPO.getPhone()) && loginUserInfo.getRoleId().equals(userSUPO.getRoleId()) && loginUserInfo.getDeptId().equals(userSUPO.getDeptId())) ){ throw new UserDeniedAuthorizationException("用户信息异常,请联系管理员"); } // R<ResultDTO> encryptRes = pwdClient.getDecrypt(loginUserInfo.getSm4iv(), loginUserInfo.getKeyindexs(),loginUserInfo.getEncdata()); // // if (encryptRes.getCode() != 200){ // throw new UserDeniedAuthorizationException("获取密钥失败"); // } // // //解码Base64 // String JSONstr = Base64Utils.getBase64Decode(encryptRes.getData().getData()); // // pwdClient.verify(loginUserInfo.getMaced(),loginUserInfo.getSm4iv(),loginUserInfo.getKeyindexs(),JSONstr,loginUserInfo.getId().toString(),"blade_user"); // // UserSUPO userSUPO = JSONObject.parseObject(JSONstr, UserSUPO.class); // // //若登录用户的电话、角色、部门与原加密数据不符,登录失败 // if (!(loginUserInfo.getPhone().equals(userSUPO.getPhone()) && loginUserInfo.getRoleId().equals(userSUPO.getRoleId()) && loginUserInfo.getDeptId().equals(userSUPO.getDeptId())) ){ // throw new UserDeniedAuthorizationException("用户信息异常,请联系管理员"); // } return new BladeUserDetails(user.getId(), user.getTenantId(), StringPool.EMPTY, user.getName(), user.getRealName(), user.getDeptId(), user.getPostId(), user.getRoleId(), Func.join(userInfo.getRoles()), Func.toStr(user.getAvatar(), TokenUtil.DEFAULT_AVATAR), skjcmanager/skjcmanager-service-api/skjcmanager-by-api/src/main/java/cn/gistack/by/waterdata/pojo/entity/CsbldFlag.java
New file @@ -0,0 +1,11 @@ package cn.gistack.by.waterdata.pojo.entity; import lombok.Data; @Data public class CsbldFlag { private String resRegCode; private String num; private int csbldFlag; } skjcmanager/skjcmanager-service/skjcmanager-by/src/main/java/cn/gistack/by/waterdata/controller/DistanceRecordController.java
@@ -16,6 +16,7 @@ */ package cn.gistack.by.waterdata.controller; import cn.gistack.by.waterdata.pojo.entity.CsbldFlag; import cn.gistack.by.waterdata.pojo.entity.DistanceRecord; import cn.gistack.by.waterdata.pojo.entity.SelectPageParam; import cn.gistack.by.waterdata.pojo.vo.DistanceRecordVO; @@ -96,4 +97,14 @@ public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) { return R.status(distanceRecordService.removeByIds(Func.toLongList(ids))); } /** * 判断水库是否有超声波雷达扩展信息 */ @GetMapping("/csbldFlag") public R<CsbldFlag> csbldFlag(@RequestParam String skGuid) { //IPage<DistanceRecordVO> pages = distanceRecordService.selectDistanceRecordPage(Condition.getPage(query), news); return R.data(distanceRecordService.csbldFlag(skGuid)); } } skjcmanager/skjcmanager-service/skjcmanager-by/src/main/java/cn/gistack/by/waterdata/mapper/DistanceRecordMapper.java
@@ -17,6 +17,7 @@ package cn.gistack.by.waterdata.mapper; import cn.gistack.by.waterdata.pojo.entity.CsbldFlag; import cn.gistack.by.waterdata.pojo.entity.DistanceRecord; import cn.gistack.by.waterdata.pojo.entity.SelectPageParam; import cn.gistack.by.waterdata.pojo.vo.DistanceRecordVO; @@ -53,4 +54,6 @@ List<DistanceRecordVO> selectDistanceRecordPage(IPage page, DistanceRecordVO distanceRecordVO); DistanceRecord selectOneById(@Param("id") int id); CsbldFlag csbldFlag(@Param("skGuid")String skGuid); } skjcmanager/skjcmanager-service/skjcmanager-by/src/main/java/cn/gistack/by/waterdata/mapper/DistanceRecordMapper.xml
@@ -53,4 +53,31 @@ <select id="selectOneById" resultType="cn.gistack.by.waterdata.pojo.entity.DistanceRecord"> select * from SJZT_ODS."water_data_distance" where "id" = #{id} </select> <select id="csbldFlag" resultType="cn.gistack.by.waterdata.pojo.entity.CsbldFlag"> SELECT tt."res_reg_code" AS "resRegCode", count(tt."res_reg_code") as "num", case when count(tt."res_reg_code") > 0 THEN 1 ELSE 0 END as "csbldFlag" FROM ( SELECT ta."device_code", tb."mn_no", tb."code", tc."res_reg_code", tc."guid" FROM "SJZT_ODS"."water_distance_device_ex" ta LEFT JOIN "SJZT_ODS"."water_device" tb ON ta."device_code" = tb."code" left join "SJZT_MD"."att_res_base" tc on tc."res_reg_code" = tb."mn_no" where tc."guid" = #{skGuid} )tt GROUP by tt."res_reg_code" </select> </mapper> skjcmanager/skjcmanager-service/skjcmanager-by/src/main/java/cn/gistack/by/waterdata/service/api/IDistanceRecordService.java
@@ -16,6 +16,7 @@ */ package cn.gistack.by.waterdata.service.api; import cn.gistack.by.waterdata.pojo.entity.CsbldFlag; import cn.gistack.by.waterdata.pojo.entity.DistanceRecord; import cn.gistack.by.waterdata.pojo.entity.SelectPageParam; import cn.gistack.by.waterdata.pojo.vo.DistanceRecordVO; @@ -50,4 +51,6 @@ IPage<DistanceRecordVO> selectDistanceRecordPage(IPage<DistanceRecordVO> page, DistanceRecordVO news); DistanceRecord selectOneById(@Param("id") int id); CsbldFlag csbldFlag(String skGuid); } skjcmanager/skjcmanager-service/skjcmanager-by/src/main/java/cn/gistack/by/waterdata/service/impl/DistanceRecordServiceImpl.java
@@ -17,6 +17,7 @@ package cn.gistack.by.waterdata.service.impl; import cn.gistack.by.waterdata.mapper.DistanceRecordMapper; import cn.gistack.by.waterdata.pojo.entity.CsbldFlag; import cn.gistack.by.waterdata.pojo.entity.DistanceRecord; import cn.gistack.by.waterdata.pojo.entity.SelectPageParam; import cn.gistack.by.waterdata.pojo.vo.DistanceRecordVO; @@ -76,4 +77,11 @@ public DistanceRecord selectOneById(int id) { return baseMapper.selectOneById(id); } @Override public CsbldFlag csbldFlag(String skGuid) { return baseMapper.csbldFlag(skGuid); } }