diff --git a/src/main/java/com/whdc/controller/AddressBookController.java b/src/main/java/com/whdc/controller/AddressBookController.java index 6686bf1..b5eeffa 100644 --- a/src/main/java/com/whdc/controller/AddressBookController.java +++ b/src/main/java/com/whdc/controller/AddressBookController.java @@ -5,7 +5,6 @@ import cn.dev33.satoken.stp.StpUtil; import com.baomidou.mybatisplus.core.metadata.IPage; import com.whdc.exception.MyException; import com.whdc.model.dto.AddressBootDto; -import com.whdc.model.dto.UserRoleDto; import com.whdc.model.entity.AbUdR; import com.whdc.model.entity.AddressBook; import com.whdc.model.entity.Organization; @@ -141,7 +140,7 @@ public class AddressBookController { } // 添加日志 - versionsService.saveInfo(model, VersionsType.ADD,model.getAdcd(),model); + versionsService.saveInfo(model, VersionsType.ADD,model.getAdcd()); model.setId(null); boolean save = service.save(model); @@ -250,7 +249,8 @@ public class AddressBookController { if (StringUtils.isBlank(adcd)){ adcd = byId.getAdcd(); } - versionsService.saveInfo(model, VersionsType.UPDATE,adcd,model); + model.setRole(byId.getRole()); + versionsService.saveInfo(model, VersionsType.UPDATE,adcd); boolean data = service.updateById(model); if (data) { String organization = model.getOrganization(); @@ -306,7 +306,7 @@ public class AddressBookController { @ApiOperation(value = "修改权限") @PostMapping(value = "updateRole") - public ResultJson updateRole(@RequestBody @Validated(Update.class) UserRoleDto model) { + public ResultJson updateRole(@RequestBody @Validated(Update.class) AddressBook model) { Integer loginId = Integer.valueOf(String.valueOf(StpUtil.getLoginId())); User user = userService.getRole(loginId); @@ -324,7 +324,7 @@ public class AddressBookController { return ResultJson.error("权限不足!!"); } - AddressBook byId = service.getById(model.getAbId()); + AddressBook byId = service.getById(model.getId()); if (Objects.isNull(byId)) { return ResultJson.error("当前数据不存在"); } @@ -344,13 +344,16 @@ public class AddressBookController { // } // // 添加日志 // versionsService.save(new Versions(null, JSON.toJSONString(model),model.getId(),++version,model.getCreateId(),new Date(), VersionsType.UPDATE_ROLE.getName())); - versionsService.saveInfo(byId, VersionsType.UPDATE_ROLE,byId.getAdcd(),model); + byId.setOname(model.getOname()); + byId.setRole(model.getRole()); + versionsService.saveInfo(byId, VersionsType.UPDATE_ROLE,byId.getAdcd()); // 只修改角色 - boolean update = userService.lambdaUpdate().set(User::getRole, model.getRole()) - .eq(User::getAbId, model.getAbId()) + boolean update = userService.lambdaUpdate() + .set(User::getRole, model.getRole()) + .eq(User::getAbId, model.getId()) .update(); return ResultJson.ok(update); } @@ -396,7 +399,7 @@ public class AddressBookController { // } // // 添加日志 // versionsService.save(new Versions(null, JSON.toJSONString(model),model.getId(),++version,model.getCreateId(),new Date(), VersionsType.DEL.getName())); - versionsService.saveInfo(model, VersionsType.DEL,model.getAdcd(),id); + versionsService.saveInfo(model, VersionsType.DEL,model.getAdcd()); return ResultJson.ok(service.removeById(id)); diff --git a/src/main/java/com/whdc/service/IVersionsService.java b/src/main/java/com/whdc/service/IVersionsService.java index 90ca8c3..4ed0585 100644 --- a/src/main/java/com/whdc/service/IVersionsService.java +++ b/src/main/java/com/whdc/service/IVersionsService.java @@ -24,5 +24,5 @@ public interface IVersionsService extends IService { // 获取所有规则 List find(Versions dto); - boolean saveInfo(AddressBook model, VersionsType versionsType, String adcd, Object reqData); + boolean saveInfo(AddressBook model, VersionsType versionsType, String adcd); } \ No newline at end of file diff --git a/src/main/java/com/whdc/service/impl/VersionsServiceImpl.java b/src/main/java/com/whdc/service/impl/VersionsServiceImpl.java index 72179be..8380a3d 100644 --- a/src/main/java/com/whdc/service/impl/VersionsServiceImpl.java +++ b/src/main/java/com/whdc/service/impl/VersionsServiceImpl.java @@ -12,6 +12,9 @@ import com.whdc.model.enums.VersionsType; import com.whdc.service.IVersionsService; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections.CollectionUtils; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.redis.core.RedisTemplate; import org.springframework.stereotype.Service; import java.util.Comparator; @@ -19,6 +22,8 @@ import java.util.Date; import java.util.List; import java.util.Objects; +import static com.whdc.model.MyConstant.REDIS_KEY; + /** *

* 服务实现类 @@ -30,6 +35,8 @@ import java.util.Objects; @Service public class VersionsServiceImpl extends ServiceImpl implements IVersionsService { + @Autowired + private RedisTemplate stringRedisTemplate; @Override public IPage page(CommDto dto) { @@ -43,7 +50,7 @@ public class VersionsServiceImpl extends ServiceImpl i } @Override - public boolean saveInfo(AddressBook model, VersionsType versionsType, String adcd,Object reqData) { + public boolean saveInfo(AddressBook model, VersionsType versionsType, String adcd) { Integer version = 0; @@ -61,13 +68,31 @@ public class VersionsServiceImpl extends ServiceImpl i } } + // redis 获取当前数据库版本 + // 判断是否以发送 + String key = REDIS_KEY + "version:" + model.getId(); + String versionRed = String.valueOf(stringRedisTemplate.opsForValue().get(key)); + if (StringUtils.isNotBlank(versionRed) && !"null".equals(versionRed)){ + int i = Integer.parseInt(versionRed); + if (i != version){ + version = i; + } + } // 添加日志 + + // 查询当前版本是否存在 Versions entity = new Versions(null, - JSON.toJSONString(reqData), model.getId(), ++version, adcd,String.valueOf(StpUtil.getLoginId()), new Date(),versionsType.getName(), + JSON.toJSONString(model), model.getId(), ++version, adcd,String.valueOf(StpUtil.getLoginId()), new Date(),versionsType.getName(), null, null ); - return this.save(entity); + boolean save = this.save(entity); + + if (save){ + stringRedisTemplate.opsForValue().set(key,String.valueOf(version)); + } + + return save; }