From ae8267320996082be9bae84aa5248ca76d735777 Mon Sep 17 00:00:00 2001
From: luoyb <412940104@qq.com>
Date: 星期四, 03 六月 2021 20:46:00 +0800
Subject: [PATCH] fix(bug修复): 查询bug

---
 febs-server/febs-server-system/src/main/java/cc/mrbird/febs/server/system/service/impl/PositionServiceImpl.java |  192 +++++++++++++++++++++++++++--------------------
 1 files changed, 109 insertions(+), 83 deletions(-)

diff --git a/febs-server/febs-server-system/src/main/java/cc/mrbird/febs/server/system/service/impl/PositionServiceImpl.java b/febs-server/febs-server-system/src/main/java/cc/mrbird/febs/server/system/service/impl/PositionServiceImpl.java
index 82d6716..74b4fb4 100644
--- a/febs-server/febs-server-system/src/main/java/cc/mrbird/febs/server/system/service/impl/PositionServiceImpl.java
+++ b/febs-server/febs-server-system/src/main/java/cc/mrbird/febs/server/system/service/impl/PositionServiceImpl.java
@@ -2,104 +2,130 @@
 
 
 import cc.mrbird.febs.common.core.constant.ModuleCode;
+import cc.mrbird.febs.common.core.entity.QueryRequest;
 import cc.mrbird.febs.common.core.entity.system.Position;
+import cc.mrbird.febs.common.core.utils.FebsUtil;
+import cc.mrbird.febs.common.core.utils.SequenceUtil;
+import cc.mrbird.febs.common.redis.service.RedisService;
 import cc.mrbird.febs.server.system.mapper.PositionMapper;
 import cc.mrbird.febs.server.system.service.IPositionService;
-import org.apache.commons.lang3.StringUtils;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-import org.springframework.transaction.annotation.Propagation;
-import lombok.RequiredArgsConstructor;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import cc.mrbird.febs.common.core.entity.QueryRequest;
-import cc.mrbird.febs.common.core.utils.FebsUtil;
-import cc.mrbird.febs.common.core.utils.SequenceUtil;
+import lombok.RequiredArgsConstructor;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Propagation;
+import org.springframework.transaction.annotation.Transactional;
 
 import java.util.*;
 
 /**
-*
-* name:Position
-* package:cc.mrbird.febs.server.system.controller
-* description:岗位信息服务接口实现
-*
-* @author Alan
-* @date 2021-02-16 11:52:53
-* @since JDK1.8
-*/
+ * name:Position
+ * package:cc.mrbird.febs.server.system.controller
+ * description:岗位信息服务接口实现
+ *
+ * @author Alan
+ * @date 2021-02-16 11:52:53
+ * @since JDK1.8
+ */
 @Service
 @RequiredArgsConstructor
 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
 class PositionServiceImpl extends ServiceImpl<PositionMapper, Position> implements IPositionService {
 
-private final PositionMapper positionMapper;
-private final String operatorId = Optional.ofNullable(FebsUtil.getCurrentUser())
-.map(u -> u.getUserId().toString())
-.orElse("1");
-@Override
-public IPage<Position> findPositions(QueryRequest request, Position position) {
-LambdaQueryWrapper<Position> queryWrapper = new LambdaQueryWrapper<>();
-queryWrapper.eq(Position::getDelFlag, 0);
-if(StringUtils.isNotBlank(position.getPositionName())){
-    queryWrapper.like(Position::getPositionName, position.getPositionName());
-}
-    queryWrapper.orderByDesc(Boolean.parseBoolean("createTime"));
-Page<Position> page = new Page<>(request.getPageNum(), request.getPageSize());
-return this.page(page, queryWrapper);
-}
+    private final PositionMapper positionMapper;
+    private final RedisService redisService;
+    private final String operatorId = Optional.ofNullable(FebsUtil.getCurrentUser())
+            .map(u -> u.getUserId().toString())
+            .orElse("1");
 
-@Override
-public List<Position> findPositions(Position position) {
-LambdaQueryWrapper<Position> queryWrapper = new LambdaQueryWrapper<>();
-queryWrapper.eq(Position::getDelFlag, 0);
-return this.baseMapper.selectList(queryWrapper);
-}
-
-@Override
-@Transactional(rollbackFor = Exception.class)
-public void createPosition(Position position) {
-position.setCreator(operatorId);
-position.setModifier(operatorId);
-this.save(position);
-}
-
-@Override
-@Transactional(rollbackFor = Exception.class)
-public void updatePosition(Position position) {
-Position dbData = this.getById(position.getPositionId());
-position.setCreateTime(dbData.getCreateTime());
-position.setCreator(dbData.getCreator());
-position.setDelFlag(dbData.getDelFlag());
-position.setModifyTime(new Date());
-position.setModifier(operatorId);
-this.saveOrUpdate(position);
-}
-
-@Override
-@Transactional(rollbackFor = Exception.class)
-public void deletePosition(Position position) {
-LambdaQueryWrapper<Position> wrapper = new LambdaQueryWrapper<>();
-    wrapper.eq(Position::getPositionId, position.getPositionId());
-// TODO 设置删除条件
-this.remove(wrapper);
-}
-/**
-*
-* 根据Id批量逻辑删除记录
-*
-* date 2021-01-28 10:48
-* @author: luoyibo
-* @param ids 待删除Id
-* @return void
-*/
-@Override
-@Transactional(rollbackFor = Exception.class)
-public void logicDelPosition(String ids) {
-    String[] str = ids.split(",");
-    List<String> list = new ArrayList<>(Arrays.asList(str));
-    positionMapper.logicDeleteByIds(list, operatorId);
+    @Override
+    public IPage<Position> findPositions(QueryRequest request, Position position) {
+        LambdaQueryWrapper<Position> queryWrapper = new LambdaQueryWrapper<>();
+        queryWrapper.eq(Position::getDelFlag, 0);
+        if (StringUtils.isNotBlank(position.getPositionName())) {
+            queryWrapper.like(Position::getPositionName, position.getPositionName());
+        }
+        queryWrapper.orderByDesc(Boolean.parseBoolean("createTime"));
+        Page<Position> page = new Page<>(request.getPageNum(), request.getPageSize());
+        IPage<Position> page1 = this.page(page, queryWrapper);
+        return page1;
     }
-}
\ No newline at end of file
+
+    @Override
+    public List<Position> findPositions(Position position) {
+        LambdaQueryWrapper<Position> queryWrapper = new LambdaQueryWrapper<>();
+        queryWrapper.eq(Position::getDelFlag, 0);
+        return this.baseMapper.selectList(queryWrapper);
+    }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void createPosition(Position position) {
+        position.setPositionId(SequenceUtil.generateId(0L, ModuleCode.FRAM_SYSTEM));
+        position.setCreator(FebsUtil.getCurrentUsername());
+        position.setModifier(FebsUtil.getCurrentUsername());
+        this.save(position);
+    }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void updatePosition(Position position) {
+        Position dbData = this.getById(position.getPositionId());
+        position.setCreateTime(dbData.getCreateTime());
+        position.setCreator(dbData.getCreator());
+        position.setDelFlag(dbData.getDelFlag());
+        position.setModifyTime(new Date());
+        position.setModifier(operatorId);
+        this.saveOrUpdate(position);
+    }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void deletePosition(Position position) {
+        LambdaQueryWrapper<Position> wrapper = new LambdaQueryWrapper<>();
+        wrapper.eq(Position::getPositionId, position.getPositionId());
+// TODO 设置删除条件
+        this.remove(wrapper);
+    }
+
+    /**
+     * 根据Id批量逻辑删除记录
+     * <p>
+     * date 2021-01-28 10:48
+     *
+     * @param ids 待删除Id
+     * @return void
+     * @author: luoyibo
+     */
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void logicDelPosition(String ids) {
+        String[] str = ids.split(",");
+        List<String> list = new ArrayList<>(Arrays.asList(str));
+        for (String strs : list) {
+            LambdaQueryWrapper<Position> wrapper = new LambdaQueryWrapper<>();
+            wrapper.eq(Position::getPositionId, strs);
+// TODO 设置删除条件
+            this.remove(wrapper);
+        }
+    }
+
+    @Override
+    public List<Map<String, Object>> selectDicJobs() {
+        return positionMapper.selectDicJobs();
+    }
+
+
+    @Override
+    public  List<Position> setPositionRedis() {
+        LambdaQueryWrapper<Position> queryWrapper = new LambdaQueryWrapper<>();
+        queryWrapper.eq(Position::getDelFlag, 0);
+        List<Position> position =  this.baseMapper.selectList(queryWrapper);
+        redisService.del("position");
+        redisService.set("position", position,60*60*24L);
+        return position;
+    }
+}

--
Gitblit v1.8.0