feat(REQ-3193): 泰州中间表数据存储的手机号,加密存储。

This commit is contained in:
周敏 2024-11-11 14:50:41 +08:00
parent 194b057d95
commit 4919d04f4d
2 changed files with 67 additions and 0 deletions

View File

@ -1,6 +1,7 @@
package cn.axzo.riven.third.entity;
import cn.axzo.framework.data.mybatisplus.model.BaseEntity;
import cn.axzo.trade.datasecurity.core.annotation.CryptField;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Getter;
import lombok.Setter;
@ -28,6 +29,7 @@ public class ThirdPerson extends BaseEntity<ThirdPerson> {
/**
* 三方人员手机号
*/
@CryptField
private String thirdPersonPhone;
/**

View File

@ -0,0 +1,65 @@
package cn.axzo.riven.third.job;
import cn.axzo.riven.third.dao.ThirdPersonDao;
import cn.axzo.riven.third.entity.ThirdPerson;
import cn.hutool.core.collection.CollUtil;
import com.alibaba.fastjson.JSON;
import com.xxl.job.core.biz.model.ReturnT;
import com.xxl.job.core.handler.IJobHandler;
import com.xxl.job.core.handler.annotation.XxlJob;
import com.xxl.job.core.log.XxlJobLogger;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.List;
import java.util.Set;
import java.util.stream.Collectors;
@Slf4j
@Component
public class RepairThirdPersonEncryptJob extends IJobHandler {
@Autowired
private ThirdPersonDao thirdPersonDao;
@XxlJob("repairThirdPersonEncryptJob")
@Override
public ReturnT<String> execute(String s) throws Exception {
XxlJobLogger.log("repairThirdPersonEncryptJob 开始, param = " + s);
Param param = StringUtils.isNotEmpty(s) ? JSON.parseObject(s, Param.class) : new Param();
List<ThirdPerson> allThirdPeople = thirdPersonDao.lambdaQuery()
.in(CollUtil.isNotEmpty(param.getIds()), ThirdPerson::getId, param.getIds())
.in(CollUtil.isNotEmpty(param.getThirdPersonPhones()), ThirdPerson::getThirdPersonPhone, param.getThirdPersonPhones())
.list().stream()
.map(tp -> {
ThirdPerson thirdPerson = new ThirdPerson();
thirdPerson.setId(tp.getId());
thirdPerson.setThirdPersonPhone(tp.getThirdPersonPhone());
thirdPerson.setUpdateAt(tp.getUpdateAt());
return thirdPerson;
}).collect(Collectors.toList());
thirdPersonDao.saveOrUpdateBatch(allThirdPeople);
XxlJobLogger.log("repairThirdPersonEncryptJob 结束,处理条数 - " + allThirdPeople.size());
return ReturnT.SUCCESS;
}
@NoArgsConstructor
@AllArgsConstructor
@Data
@Builder
public static class Param {
private Set<Long> ids;
private Set<String> thirdPersonPhones;
}
}