Jelajahi Sumber

Merge remote-tracking branch 'origin/master'

hym 4 tahun lalu
induk
melakukan
fd9cff6e2e

+ 1 - 0
user_center/src/main/java/com/huaxu/controller/LoginLogController.java

@@ -141,6 +141,7 @@ public class LoginLogController {
         loginLogDto.setTenantId(loginUser.getTenantId());
         loginLogDto.setCondition(condition);
         loginLogDto.setDepartmentId(departmentId);
+        loginLogDto.setProgramItems(loginUser.getProgramItemList());
         try {
             if(StringUtils.isNotBlank(beginTime)){
                 loginLogDto.setBeginTime(f.parse(beginTime));

+ 1 - 2
user_center/src/main/java/com/huaxu/controller/OperateLogController.java

@@ -136,8 +136,7 @@ public class OperateLogController {
         operateLogDto.setTenantId(loginUser.getTenantId());
         operateLogDto.setCondition(condition);
         operateLogDto.setDepartmentId(departmentId);
-
-        List<ProgramItem> programItemList = loginUser.getProgramItemList();
+        operateLogDto.setProgramItems(loginUser.getProgramItemList());
         try {
             if(StringUtils.isNotBlank(beginTime)){
                 operateLogDto.setBeginTime(f.parse(beginTime));

+ 2 - 1
user_center/src/main/java/com/huaxu/dao/UserMapper.java

@@ -4,6 +4,7 @@ import com.huaxu.entity.UserEntity;
 import java.io.Serializable;
 import java.util.List;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.huaxu.model.ProgramItem;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -22,7 +23,7 @@ public interface UserMapper extends BaseMapper<UserEntity> {
      * @param  page 
      * @param  userEntity 实体类
      */
-     Page<UserEntity> findPage(IPage<UserEntity> page, @Param("user") UserEntity userEntity);
+     Page<UserEntity> findPage(IPage<UserEntity> page, @Param("user") UserEntity userEntity, @Param("userType") String userType,@Param("list") Long[] list);
 
      UserEntity findUserById(Serializable id);
 

+ 6 - 0
user_center/src/main/java/com/huaxu/dto/LoginLogDto.java

@@ -4,10 +4,12 @@ import com.alibaba.excel.annotation.ExcelIgnore;
 import com.alibaba.excel.annotation.ExcelProperty;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import com.huaxu.entity.LoginLogEntity;
+import com.huaxu.model.ProgramItem;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 import java.util.Date;
+import java.util.List;
 
 /**
  * @description
@@ -39,4 +41,8 @@ public class LoginLogDto extends LoginLogEntity {
     @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
     private Date endTime;
 
+    @ExcelIgnore
+    @ApiModelProperty(value ="权限",hidden = true)
+    private List<ProgramItem> programItems;
+
 }

+ 5 - 13
user_center/src/main/java/com/huaxu/dto/OperateLogDto.java

@@ -4,10 +4,12 @@ import com.alibaba.excel.annotation.ExcelIgnore;
 import com.alibaba.excel.annotation.ExcelProperty;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import com.huaxu.entity.OperateLogEntity;
+import com.huaxu.model.ProgramItem;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 import java.util.Date;
+import java.util.List;
 
 /**
  * @description
@@ -44,17 +46,7 @@ public class OperateLogDto extends OperateLogEntity {
     @ApiModelProperty(value ="分页查询:条数,默认 30")
     private Integer pageSize;
 
-    public Integer getPageNum() {
-        if(pageNum == null){
-            return 1;
-        }
-        return pageNum;
-    }
-
-    public Integer getPageSize() {
-        if(pageSize == null){
-            return 30;
-        }
-        return pageSize;
-    }
+    @ExcelIgnore
+    @ApiModelProperty(value ="权限",hidden = true)
+    private List<ProgramItem> programItems;
 }

+ 1 - 0
user_center/src/main/java/com/huaxu/service/OperateLogService.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.huaxu.dto.LoginLogDto;
 import com.huaxu.dto.OperateLogDto;
 import com.huaxu.entity.OperateLogEntity;
+import com.huaxu.model.ProgramItem;
 
 import java.util.List;
 

+ 14 - 2
user_center/src/main/java/com/huaxu/service/UserService.java

@@ -8,6 +8,7 @@ import com.huaxu.entity.UserEntity;
 import com.huaxu.entity.UserRoleEntity;
 import com.huaxu.entity.UserTagEntity;
 import com.huaxu.model.LoginUser;
+import com.huaxu.model.ProgramItem;
 import com.huaxu.util.UserUtil;
 import org.springframework.stereotype.Service;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -40,8 +41,19 @@ public class UserService extends ServiceImpl<UserMapper,UserEntity> {
 	 */
 	public IPage<UserEntity> findPage(IPage<UserEntity> page, UserEntity userEntity) {
 		LoginUser currentUser = UserUtil.getCurrentUser();
-		userEntity.setTenantId(currentUser.getTenantId());
-		Page<UserEntity> userPage = userMapper.findPage(page, userEntity);
+		List<ProgramItem> programItems = new ArrayList<ProgramItem>();
+		Long[] ids = null;
+		if (currentUser != null) {
+			userEntity.setTenantId(currentUser.getTenantId());
+			programItems = currentUser.getProgramItemList();
+			if (programItems!=null &&programItems.size() > 0) {
+				ids = new Long[programItems.size()];
+				for ( int i=0;i< programItems.size();i++) {
+					ids[i]= Long.valueOf(programItems.get(i).getOrgId());
+				}
+			}
+		}
+		Page<UserEntity> userPage = userMapper.findPage(page, userEntity, currentUser.getType(), ids);
 		return userPage;
 	}
 

+ 1 - 0
user_center/src/main/java/com/huaxu/service/impl/OperateLogServiceImpl.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.huaxu.dao.OperateLogMapper;
 import com.huaxu.dto.OperateLogDto;
 import com.huaxu.entity.OperateLogEntity;
+import com.huaxu.model.ProgramItem;
 import com.huaxu.service.OperateLogService;
 import org.springframework.stereotype.Service;
 

+ 14 - 0
user_center/src/main/resources/mapper/LoginLogMapper.xml

@@ -171,6 +171,20 @@
             <if test="loginLogDto.endTime != null">
                 and a.create_time &lt;= DATE_ADD(#{loginLogDto.endTime},INTERVAL 1 DAY)
             </if>
+            <if test="loginLogDto.programItems != null and loginLogDto.programItems.size() > 0">
+                and
+                (com.id in
+                <foreach item="item" index="index" collection="loginLogDto.programItems"
+                         open="(" separator="," close=")">
+                    #{item.orgId}
+                </foreach>
+                or dep.id in
+                <foreach item="item" index="index" collection="loginLogDto.programItems"
+                         open="(" separator="," close=")">
+                    #{item.orgId}
+                </foreach>
+                )
+            </if>
         </where>
     </select>
 

+ 15 - 0
user_center/src/main/resources/mapper/OperateLogMapper.xml

@@ -169,6 +169,21 @@
             <if test="operateLogDto.endTime != null">
                 and a.create_time &lt;=  DATE_ADD(#{operateLogDto.endTime},INTERVAL 1 DAY)
             </if>
+
+            <if test="operateLogDto.programItems != null and operateLogDto.programItems.size() > 0">
+                and
+                (com.id in
+                <foreach item="item" index="index" collection="operateLogDto.programItems"
+                         open="(" separator="," close=")">
+                    #{item.orgId}
+                </foreach>
+                or dep.id in
+                <foreach item="item" index="index" collection="operateLogDto.programItems"
+                         open="(" separator="," close=")">
+                    #{item.orgId}
+                </foreach>
+                )
+            </if>
         </where>
     </select>
 </mapper>

+ 12 - 0
user_center/src/main/resources/mapper/UserMapper.xml

@@ -97,6 +97,18 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
                      or a.COMPANY_ORG_ID = #{user.companyOrgId}
                   )
             </if>
+           <if test="userType != null  and userType != '' and '2'.toString() == userType.toString() and list != null">
+                and ( a.DEPT_ORG_ID in
+                       <foreach collection="list" item="item" open="(" close=")" separator=",">
+                           #{item}
+                       </foreach>
+                       or
+                     a.COMPANY_ORG_ID in
+                        <foreach collection="list" item="item" open="(" close=")" separator=",">
+                            #{item}
+                        </foreach>
+                )
+           </if>
 		</where>
         order by a.date_create desc
 	 </select>