初始化表情bug
This commit is contained in:
@@ -66,54 +66,59 @@ public class FaceJsonService extends BaseService {
|
||||
*/
|
||||
@SneakyThrows
|
||||
public FaceJson getValidFaceJson(String appVersion) {
|
||||
boolean afterVipFaceVer = AppVersionUtil.compareVersion(appVersion, VIP_FACE_VERSION) >= 0;
|
||||
String json = jedisService.get(RedisKey.face_json.getKey());
|
||||
FaceJson faceJson;
|
||||
if (!BlankUtil.isBlank(json)) {
|
||||
faceJson = gson.fromJson(json, FaceJson.class);
|
||||
} else {
|
||||
faceJson = getFaceJsonFromDB();
|
||||
jedisService.set(RedisKey.face_json.getKey(), gson.toJson(faceJson));
|
||||
}
|
||||
/**
|
||||
* 解密 -> 处理数据 -> 重新加密返回
|
||||
* 不知道为啥非要全部信息加密返回给客户端,真是折磨
|
||||
*/
|
||||
String faceJsonString = DESUtils.DESAndBase64Decrypt(faceJson.getJson(), Constant.FaceJsonConfig.FACE_JSON_KEY);
|
||||
FaceJsonDetail faceJsonDetail = JSONObject.parseObject(faceJsonString, FaceJsonDetail.class);
|
||||
List<FaceInfo> faceList = faceJsonDetail.getFaces();
|
||||
for (FaceInfo faceInfo : faceList) {
|
||||
faceInfo.setName(StrUtil.EMPTY);
|
||||
}
|
||||
List<FaceInfo> normalFaceList = faceList.stream().filter(faceInfo ->
|
||||
(faceInfo.getFaceKind() == null || Constant.FaceKind.NORMAL.equals(faceInfo.getFaceKind())))
|
||||
.collect(Collectors.toList());
|
||||
if (afterVipFaceVer) {
|
||||
// 按照faceKind进行分组
|
||||
List<FaceInfo> vipFaceList = faceList.stream().filter(faceInfo -> Constant.FaceKind.VIP_FACE.equals(faceInfo.getFaceKind()))
|
||||
try {
|
||||
boolean afterVipFaceVer = AppVersionUtil.compareVersion(appVersion, VIP_FACE_VERSION) >= 0;
|
||||
String json = jedisService.get(RedisKey.face_json.getKey());
|
||||
if (!BlankUtil.isBlank(json)) {
|
||||
faceJson = gson.fromJson(json, FaceJson.class);
|
||||
} else {
|
||||
faceJson = getFaceJsonFromDB();
|
||||
jedisService.set(RedisKey.face_json.getKey(), gson.toJson(faceJson));
|
||||
}
|
||||
/**
|
||||
* 解密 -> 处理数据 -> 重新加密返回
|
||||
* 不知道为啥非要全部信息加密返回给客户端,真是折磨
|
||||
*/
|
||||
String faceJsonString = DESUtils.DESAndBase64Decrypt(faceJson.getJson(), Constant.FaceJsonConfig.FACE_JSON_KEY);
|
||||
FaceJsonDetail faceJsonDetail = JSONObject.parseObject(faceJsonString, FaceJsonDetail.class);
|
||||
List<FaceInfo> faceList = faceJsonDetail.getFaces();
|
||||
for (FaceInfo faceInfo : faceList) {
|
||||
faceInfo.setName(StrUtil.EMPTY);
|
||||
}
|
||||
List<FaceInfo> normalFaceList = faceList.stream().filter(faceInfo ->
|
||||
(faceInfo.getFaceKind() == null || Constant.FaceKind.NORMAL.equals(faceInfo.getFaceKind())))
|
||||
.collect(Collectors.toList());
|
||||
List<FaceInfo> vipFaces = new ArrayList<>();
|
||||
List<FaceInfo> finalVipFaces = vipFaces;
|
||||
vipFaceList.forEach(faceInfo -> {
|
||||
VipInfo vipInfo = vipAuthItemService.getVipInfoByTypeAndItemId(Constant.VipAuthType.FACE, faceInfo.getId().toString());
|
||||
if (null != vipInfo) {
|
||||
VipBaseInfoVO faceVipInfo = new VipBaseInfoVO();
|
||||
faceVipInfo.setVipIcon(vipInfo.getVipIcon());
|
||||
faceVipInfo.setVipLevel(vipInfo.getVipLevel());
|
||||
faceVipInfo.setVipName(vipInfo.getVipName());
|
||||
faceInfo.setFaceVipInfo(faceVipInfo);
|
||||
finalVipFaces.add(faceInfo);
|
||||
}
|
||||
});
|
||||
vipFaces = finalVipFaces.stream().sorted(Comparator.comparing(face -> face.getFaceVipInfo().getVipLevel())).collect(Collectors.toList());
|
||||
faceJsonDetail.setVipFaces(vipFaces);
|
||||
if (afterVipFaceVer) {
|
||||
// 按照faceKind进行分组
|
||||
List<FaceInfo> vipFaceList = faceList.stream().filter(faceInfo -> Constant.FaceKind.VIP_FACE.equals(faceInfo.getFaceKind()))
|
||||
.collect(Collectors.toList());
|
||||
List<FaceInfo> vipFaces = new ArrayList<>();
|
||||
List<FaceInfo> finalVipFaces = vipFaces;
|
||||
vipFaceList.forEach(faceInfo -> {
|
||||
VipInfo vipInfo = vipAuthItemService.getVipInfoByTypeAndItemId(Constant.VipAuthType.FACE, faceInfo.getId().toString());
|
||||
if (null != vipInfo) {
|
||||
VipBaseInfoVO faceVipInfo = new VipBaseInfoVO();
|
||||
faceVipInfo.setVipIcon(vipInfo.getVipIcon());
|
||||
faceVipInfo.setVipLevel(vipInfo.getVipLevel());
|
||||
faceVipInfo.setVipName(vipInfo.getVipName());
|
||||
faceInfo.setFaceVipInfo(faceVipInfo);
|
||||
finalVipFaces.add(faceInfo);
|
||||
}
|
||||
});
|
||||
vipFaces = finalVipFaces.stream().sorted(Comparator.comparing(face -> face.getFaceVipInfo().getVipLevel())).collect(Collectors.toList());
|
||||
faceJsonDetail.setVipFaces(vipFaces);
|
||||
}
|
||||
faceJsonDetail.setFaces(normalFaceList);
|
||||
// 加密返回
|
||||
String faceJsonDetailStr = JSONObject.toJSONString(faceJsonDetail);
|
||||
String encryptStr = DESUtils.DESAndBase64Encrypt(faceJsonDetailStr, Constant.FaceJsonConfig.FACE_JSON_KEY);
|
||||
faceJson.setJson(encryptStr);
|
||||
return faceJson;
|
||||
} catch (Exception e) {
|
||||
logger.error("FaceJsonService.getValidFaceJson(java.lang.String)", e.getMessage(), e);
|
||||
}
|
||||
faceJsonDetail.setFaces(normalFaceList);
|
||||
// 加密返回
|
||||
String faceJsonDetailStr = JSONObject.toJSONString(faceJsonDetail);
|
||||
String encryptStr = DESUtils.DESAndBase64Encrypt(faceJsonDetailStr, Constant.FaceJsonConfig.FACE_JSON_KEY);
|
||||
faceJson.setJson(encryptStr);
|
||||
return faceJson;
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user