Forráskód Böngészése

基础平台模块bug修改

huzhe 1 éve
szülő
commit
7e8b92e79d
19 módosított fájl, 87 hozzáadás és 14 törlés
  1. 2 0
      ruoyi-api/ruoyi-api-backstage/src/main/java/org/dromara/backstage/api/RemoteUserAccountService.java
  2. 3 0
      ruoyi-api/ruoyi-api-system/src/main/java/org/dromara/system/api/RemoteDeptService.java
  3. 2 2
      ruoyi-modules/ruoyi-backstage/src/main/java/org/dromara/backstage/basics/domain/bo/PtWorkstationBo.java
  4. 2 2
      ruoyi-modules/ruoyi-backstage/src/main/java/org/dromara/backstage/basics/mapper/PtMealtypeMapper.java
  5. 11 2
      ruoyi-modules/ruoyi-backstage/src/main/java/org/dromara/backstage/basics/service/impl/PtParameterServiceImpl.java
  6. 11 1
      ruoyi-modules/ruoyi-backstage/src/main/java/org/dromara/backstage/basics/service/impl/PtWorkstationServiceImpl.java
  7. 6 0
      ruoyi-modules/ruoyi-backstage/src/main/java/org/dromara/backstage/payment/domain/bo/PtUserAccountBo.java
  8. 1 1
      ruoyi-modules/ruoyi-backstage/src/main/java/org/dromara/backstage/payment/domain/vo/PtUserAccountVo.java
  9. 5 0
      ruoyi-modules/ruoyi-backstage/src/main/java/org/dromara/backstage/payment/dubbo/RemoteUserAccountServiceImpl.java
  10. 9 3
      ruoyi-modules/ruoyi-backstage/src/main/java/org/dromara/backstage/payment/service/impl/PtUserAccountServiceImpl.java
  11. 10 0
      ruoyi-modules/ruoyi-backstage/src/main/resources/mapper/basicParameter/PtMealtypeMapper.xml
  12. 5 1
      ruoyi-modules/ruoyi-backstage/src/main/resources/mapper/payment/PtUserAccountMapper.xml
  13. 1 1
      ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysUser.java
  14. 3 0
      ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysUserBo.java
  15. 0 1
      ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysUserVo.java
  16. 5 0
      ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/dubbo/RemoteDeptServiceImpl.java
  17. 3 0
      ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysDeptService.java
  18. 7 0
      ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java
  19. 1 0
      ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java

+ 2 - 0
ruoyi-api/ruoyi-api-backstage/src/main/java/org/dromara/backstage/api/RemoteUserAccountService.java

@@ -26,4 +26,6 @@ public interface RemoteUserAccountService {
 
     R<String> openAccount(RemoteUserAccountBo bo);
 
+     void updateByBo(RemoteUserAccountBo bo);
+
 }

+ 3 - 0
ruoyi-api/ruoyi-api-system/src/main/java/org/dromara/system/api/RemoteDeptService.java

@@ -20,4 +20,7 @@ public interface RemoteDeptService {
     String selectDeptNameByIds(String deptIds);
 
     List<Tree<Long>>deptTree();
+
+    //根据部门id查询子部门列表
+    List<Long> selectDeptAndChildrenDeptById(Long parentId);
 }

+ 2 - 2
ruoyi-modules/ruoyi-backstage/src/main/java/org/dromara/backstage/basics/domain/bo/PtWorkstationBo.java

@@ -29,7 +29,7 @@ public class PtWorkstationBo extends BaseEntity {
     /**
      * 工伤站名称
      */
-    @NotBlank(message = "工站名称不能为空", groups = { AddGroup.class, EditGroup.class })
+    @NotBlank(message = "工站名称不能为空", groups = { AddGroup.class, EditGroup.class })
     private String stationName;
 
     /**
@@ -86,7 +86,7 @@ public class PtWorkstationBo extends BaseEntity {
     /**
      * 是否在线
      */
-    @NotBlank(message = "是否在线不能为空", groups = { AddGroup.class, EditGroup.class })
+//    @NotBlank(message = "是否在线不能为空", groups = { AddGroup.class, EditGroup.class })
     private String onLine;
 
     /**

+ 2 - 2
ruoyi-modules/ruoyi-backstage/src/main/java/org/dromara/backstage/basics/mapper/PtMealtypeMapper.java

@@ -16,11 +16,11 @@ import java.util.List;
  */
 public interface PtMealtypeMapper extends BaseMapperPlus<PtMealType, PtMealTypeVo> {
 
-    @Select("SELECT * FROM t_pt_mealType WHERE" +
+    /*@Select("SELECT * FROM t_pt_mealType WHERE" +
         " ((#{beginTime} >= begin_Time AND #{beginTime} <end_time)" +
         " OR (#{endTime} > begin_Time AND #{endTime} <= end_time)" +
         " OR type_id = #{typeId})" +
-        " AND meal_id != #{mealId} AND del_flag = 0")
+        " AND meal_id != #{mealId} AND del_flag = 0")*/
     List<PtMealTypeVo> validateSelect(@Param("typeId") String typeId, @Param("mealId") Long mealId
         , @Param("beginTime") String beginTime, @Param("endTime") String endTime);
 

+ 11 - 2
ruoyi-modules/ruoyi-backstage/src/main/java/org/dromara/backstage/basics/service/impl/PtParameterServiceImpl.java

@@ -2,6 +2,7 @@ package org.dromara.backstage.basics.service.impl;
 
 import cn.hutool.core.util.ObjectUtil;
 import org.dromara.common.core.constant.CacheNames;
+import org.dromara.common.core.exception.ServiceException;
 import org.dromara.common.core.utils.MapstructUtils;
 import org.dromara.common.core.utils.StringUtils;
 import org.dromara.common.mybatis.core.page.TableDataInfo;
@@ -56,6 +57,7 @@ public class PtParameterServiceImpl implements IPtParameterService {
     @Override
     public TableDataInfo<PtParameterVo> queryPageList(PtParameterBo bo, PageQuery pageQuery) {
         LambdaQueryWrapper<PtParameter> lqw = buildQueryWrapper(bo);
+        lqw.orderByDesc(PtParameter::getCreateTime);
         Page<PtParameterVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
         return TableDataInfo.build(result);
     }
@@ -86,7 +88,7 @@ public class PtParameterServiceImpl implements IPtParameterService {
      * @param bo 系统参数
      * @return 是否新增成功
      */
-    @Cacheable(cacheNames = CacheNames.PT_PARAMETER, key = "#bo.paramCode")
+//    @Cacheable(cacheNames = CacheNames.PT_PARAMETER, key = "#bo.paramCode")
     @Override
     public Boolean insertByBo(PtParameterBo bo) {
         PtParameter add = MapstructUtils.convert(bo, PtParameter.class);
@@ -147,6 +149,13 @@ public class PtParameterServiceImpl implements IPtParameterService {
      * 保存前的数据校验
      */
     private void validEntityBeforeSave(PtParameter entity){
-        //TODO 做一些数据校验,如唯一约束
+        //系统参数编码不允许重复
+        Long count = baseMapper.selectCount(Wrappers.<PtParameter>lambdaQuery()
+            .eq(PtParameter::getParamCode, entity.getParamCode())
+            .ne(entity.getParamId() != null, PtParameter::getParamId, entity.getParamId())
+        );
+        if(count > 0){
+            throw new ServiceException("系统参数编码已存在!");
+        }
     }
 }

+ 11 - 1
ruoyi-modules/ruoyi-backstage/src/main/java/org/dromara/backstage/basics/service/impl/PtWorkstationServiceImpl.java

@@ -1,5 +1,6 @@
 package org.dromara.backstage.basics.service.impl;
 
+import org.dromara.common.core.exception.ServiceException;
 import org.dromara.common.core.utils.MapstructUtils;
 import org.dromara.common.core.utils.StringUtils;
 import org.dromara.common.mybatis.core.page.TableDataInfo;
@@ -52,6 +53,7 @@ public class PtWorkstationServiceImpl implements IPtWorkstationService {
     @Override
     public TableDataInfo<PtWorkstationVo> queryPageList(PtWorkstationBo bo, PageQuery pageQuery) {
         LambdaQueryWrapper<PtWorkstation> lqw = buildQueryWrapper(bo);
+        lqw.orderByDesc(PtWorkstation::getCreateTime);
         Page<PtWorkstationVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
         return TableDataInfo.build(result);
     }
@@ -111,7 +113,15 @@ public class PtWorkstationServiceImpl implements IPtWorkstationService {
      * 保存前的数据校验
      */
     private void validEntityBeforeSave(PtWorkstation entity){
-        //TODO 做一些数据校验,如唯一约束
+        //编号重复校验
+        Long count = baseMapper.selectCount(Wrappers.<PtWorkstation>lambdaQuery()
+            .eq(PtWorkstation::getStationNumb, entity.getStationNumb())
+            .ne(entity.getStationId() != null, PtWorkstation::getStationId, entity.getStationId())
+        );
+
+        if(count > 0){
+            throw new ServiceException("工作站编号已存在!");
+        }
     }
 
     /**

+ 6 - 0
ruoyi-modules/ruoyi-backstage/src/main/java/org/dromara/backstage/payment/domain/bo/PtUserAccountBo.java

@@ -2,6 +2,8 @@ package org.dromara.backstage.payment.domain.bo;
 
 import cn.hutool.core.util.DesensitizedUtil;
 import org.dromara.backstage.payment.domain.PtUserAccount;
+import org.dromara.common.encrypt.annotation.EncryptField;
+import org.dromara.common.encrypt.enumd.AlgorithmType;
 import org.dromara.common.mybatis.core.domain.BaseEntity;
 import org.dromara.common.core.validate.AddGroup;
 import org.dromara.common.core.validate.EditGroup;
@@ -11,6 +13,8 @@ import lombok.EqualsAndHashCode;
 import jakarta.validation.constraints.*;
 import java.util.Date;
 import com.fasterxml.jackson.annotation.JsonFormat;
+import org.dromara.common.sensitive.annotation.Sensitive;
+import org.dromara.common.sensitive.core.SensitiveStrategy;
 
 /**
  * 一卡通账户业务对象 t_pt_userAccount
@@ -95,6 +99,8 @@ public class PtUserAccountBo extends BaseEntity {
      * 手机号码
      */
     @NotBlank(message = "手机号码不能为空", groups = { AddGroup.class, EditGroup.class })
+//    @Sensitive(strategy = SensitiveStrategy.PHONE)
+    @EncryptField(algorithm = AlgorithmType.BASE64)
     private String phone;
 
     /**

+ 1 - 1
ruoyi-modules/ruoyi-backstage/src/main/java/org/dromara/backstage/payment/domain/vo/PtUserAccountVo.java

@@ -105,7 +105,7 @@ public class PtUserAccountVo implements Serializable {
     /**
      * 手机号码
      */
-    @Sensitive(strategy= SensitiveStrategy.PHONE)
+//    @Sensitive(strategy= SensitiveStrategy.PHONE)
     @ExcelProperty(value = "手机号码")
     private String phone;
 

+ 5 - 0
ruoyi-modules/ruoyi-backstage/src/main/java/org/dromara/backstage/payment/dubbo/RemoteUserAccountServiceImpl.java

@@ -49,4 +49,9 @@ public class RemoteUserAccountServiceImpl implements RemoteUserAccountService {
         PtUserAccountBo ptUserAccountBo = BeanUtil.copyProperties(bo, PtUserAccountBo.class);
         return userAccountBusiness.openAccount(ptUserAccountBo);
     }
+
+    @Override
+    public void updateByBo(RemoteUserAccountBo bo) {
+        userAccountService.updateByBo(BeanUtil.copyProperties(bo, PtUserAccountBo.class));
+    }
 }

+ 9 - 3
ruoyi-modules/ruoyi-backstage/src/main/java/org/dromara/backstage/payment/service/impl/PtUserAccountServiceImpl.java

@@ -83,6 +83,11 @@ public class PtUserAccountServiceImpl implements IPtUserAccountService {
     @Override
     public TableDataInfo<PtUserAccountVo> queryPageList(PtUserAccountBo bo, PageQuery pageQuery) {
         LambdaQueryWrapper<PtUserAccount> lqw = buildQueryWrapper(bo);
+        Long deptId = bo.getDeptId();
+        if(deptId != null){
+            List<Long> ids = remoteDeptService.selectDeptAndChildrenDeptById(bo.getDeptId());
+            lqw.in(PtUserAccount::getDeptId, ids);
+        }
         lqw.orderByAsc(PtUserAccount::getDeptId)
             .orderByAsc(PtUserAccount::getRealName);
         //Page<PtUserAccountVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
@@ -121,7 +126,7 @@ public class PtUserAccountServiceImpl implements IPtUserAccountService {
         Map<String, Object> params = bo.getParams();
         LambdaQueryWrapper<PtUserAccount> lqw = Wrappers.lambdaQuery();
         lqw.eq(bo.getPostId() != null, PtUserAccount::getPostId, bo.getPostId());
-        lqw.eq(bo.getDeptId() != null, PtUserAccount::getDeptId, bo.getDeptId());
+//        lqw.eq(bo.getDeptId() != null, PtUserAccount::getDeptId, bo.getDeptId());
         lqw.like(StringUtils.isNotBlank(bo.getUserName()), PtUserAccount::getUserName, bo.getUserName());
         lqw.eq(StringUtils.isNotBlank(bo.getPassword()), PtUserAccount::getPassword, bo.getPassword());
         lqw.eq(StringUtils.isNotBlank(bo.getUserNumb()), PtUserAccount::getUserNumb, bo.getUserNumb());
@@ -397,7 +402,7 @@ public class PtUserAccountServiceImpl implements IPtUserAccountService {
             idCards.add(idCard);
         }
         Map<String, Long> idCardMap = baseMapper.selectList(Wrappers.lambdaQuery(PtUserAccount.class)
-            .select(PtUserAccount::getIdNumber)
+            .select(PtUserAccount::getIdNumber, PtUserAccount::getUserId)
             .in(PtUserAccount::getIdNumber,idCards)
         ).stream().collect(Collectors.toMap(PtUserAccount::getIdNumber, PtUserAccount:: getUserId));
 
@@ -418,9 +423,10 @@ public class PtUserAccountServiceImpl implements IPtUserAccountService {
                     //4.保存图片路径到数据库
                     String photoUrl = userPath + newFileName;
                         updateByBo(PtUserAccountBo.builder().userId(idCardMap.get(idCard)).photo(photoUrl).build());
+                        okNum++;
                 }
             }
         }
-        return 0;
+        return okNum;
     }
 }

+ 10 - 0
ruoyi-modules/ruoyi-backstage/src/main/resources/mapper/basicParameter/PtMealtypeMapper.xml

@@ -20,4 +20,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <result property="updateTime"    column="update_time"    />
     </resultMap>
 
+    <select id="validateSelect" resultMap="PtMealtypeResult">
+        SELECT * FROM t_pt_mealType
+            WHERE  (type_id = #{typeId}
+               OR (#{beginTime} >= begin_Time AND #{beginTime} &lt; end_time)
+               OR (#{endTime} > begin_Time AND #{endTime} &lt;= end_time))
+        <if test="mealId != null">
+            AND meal_id != #{mealId}
+        </if>
+            AND del_flag = 0
+    </select>
 </mapper>

+ 5 - 1
ruoyi-modules/ruoyi-backstage/src/main/resources/mapper/payment/PtUserAccountMapper.xml

@@ -47,7 +47,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     </resultMap>
 
     <select id="customPageList" resultType="org.dromara.backstage.payment.domain.vo.PtUserAccount4SelectVo">
-        select u.user_name,u.user_id,u.dept_id,u.real_name,u.user_numb,u.phone,u.account_status,u.freeze_status,u.status,a.dept_name deptName
+        select u.user_name,u.user_id,u.dept_id,u.real_name,u.user_numb,u.phone
+             ,u.photo,u.account_status,u.freeze_status,u.status,a.dept_name deptName
         from t_pt_userAccount u
             join t_sys_dept a on u.dept_id = a.dept_id
         <where>
@@ -64,6 +65,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="bo.userNumb != null and  bo.userNumb != ''">
                 and u.user_numb = #{bo.userNumb}
             </if>
+            <if test="bo.phone != null and  bo.phone != ''">
+                and u.phone = #{bo.phone}
+            </if>
         </where>
         order by u.dept_id,u.user_id
     </select>

+ 1 - 1
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/SysUser.java

@@ -86,7 +86,7 @@ public class SysUser extends TenantEntity {
     /**
      * 手机号码
      */
-//    @EncryptField(algorithm = AlgorithmType.BASE64)
+    @EncryptField(algorithm = AlgorithmType.BASE64)
     private String phone;
 
     /**

+ 3 - 0
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/SysUserBo.java

@@ -13,6 +13,8 @@ import org.dromara.common.core.validate.AddGroup;
 import org.dromara.common.core.validate.EditGroup;
 import org.dromara.common.core.xss.Xss;
 import org.dromara.common.mybatis.core.domain.BaseEntity;
+import org.dromara.common.sensitive.annotation.Sensitive;
+import org.dromara.common.sensitive.core.SensitiveStrategy;
 import org.dromara.system.domain.SysUser;
 
 import java.util.Date;
@@ -85,6 +87,7 @@ public class SysUserBo extends BaseEntity {
     /**
      * 手机号码
      */
+    @Sensitive(strategy = SensitiveStrategy.PHONE)
     private String phone;
 
     /**

+ 0 - 1
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/SysUserVo.java

@@ -88,7 +88,6 @@ public class SysUserVo implements Serializable {
     /**
      * 手机号码
      */
-    @Sensitive(strategy = SensitiveStrategy.PHONE)
     private String phone;
 
     /**

+ 5 - 0
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/dubbo/RemoteDeptServiceImpl.java

@@ -47,4 +47,9 @@ public class RemoteDeptServiceImpl implements RemoteDeptService {
         SysDeptBo dept = new SysDeptBo();
         return sysDeptService.selectDeptTreeList(dept);
     }
+
+    @Override
+    public List<Long> selectDeptAndChildrenDeptById(Long parentId) {
+        return sysDeptService.selectDeptAndChildrenDeptById(parentId);
+    }
 }

+ 3 - 0
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/ISysDeptService.java

@@ -131,4 +131,7 @@ public interface ISysDeptService {
      * @return 结果
      */
     int deleteDeptById(Long deptId);
+
+    //根据部门ID查询子部门列表
+    List<Long> selectDeptAndChildrenDeptById(Long deptId);
 }

+ 7 - 0
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java

@@ -339,4 +339,11 @@ public class SysDeptServiceImpl implements ISysDeptService {
         return baseMapper.deleteById(deptId);
     }
 
+    @Override
+    public List<Long> selectDeptAndChildrenDeptById(Long deptId) {
+        return baseMapper.selectList(Wrappers.lambdaQuery(SysDept.class)
+            .select(SysDept::getDeptId)
+            .eq(SysDept::getParentId, deptId).or().eq(SysDept::getDeptId, deptId)
+        ).stream().map(SysDept::getDeptId).toList();
+    }
 }

+ 1 - 0
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java

@@ -393,6 +393,7 @@ public class SysUserServiceImpl implements ISysUserService {
         SysUser sysUser = MapstructUtils.convert(user, SysUser.class);
         // 防止错误更新后导致的数据误删除
         int flag = baseMapper.updateById(sysUser);
+        remoteUserAccountService.updateByBo(BeanUtil.copyProperties(user, RemoteUserAccountBo.class));
         if (flag < 1) {
             throw new ServiceException("修改用户" + user.getUserName() + "信息失败");
         }