diff --git a/src/main/java/com/easysoftware/application/epkgpackage/EPKGPackageServiceImpl.java b/src/main/java/com/easysoftware/application/epkgpackage/EPKGPackageServiceImpl.java index 6d028f70cafdb5ed3a7f90a9c48fc63e9dc04572..7d77da9d4ec95d78f9a9b7be6d9075c2901509bc 100644 --- a/src/main/java/com/easysoftware/application/epkgpackage/EPKGPackageServiceImpl.java +++ b/src/main/java/com/easysoftware/application/epkgpackage/EPKGPackageServiceImpl.java @@ -13,6 +13,7 @@ import org.springframework.stereotype.Service; import com.easysoftware.application.epkgpackage.dto.EPKGPackageSearchCondition; import com.easysoftware.application.epkgpackage.dto.InputEPKGPackage; import com.easysoftware.common.entity.MessageCode; +import com.easysoftware.common.utils.Base64Util; import com.easysoftware.common.utils.ResultUtil; import com.easysoftware.domain.epkgpackage.EPKGPackage; import com.easysoftware.domain.epkgpackage.EPKGPackageUnique; @@ -53,7 +54,9 @@ public class EPKGPackageServiceImpl implements EPKGPackageService { @Override public ResponseEntity insertEPKGPkg(InputEPKGPackage inputEPKGPackage) { - if (StringUtils.isNotBlank(inputEPKGPackage.getId())) { + inputEPKGPackage = Base64Util.decode(inputEPKGPackage); + + if (StringUtils.isNotBlank(inputEPKGPackage.getId())) { return ResultUtil.fail(HttpStatus.BAD_REQUEST, MessageCode.EC0002); } // 数据库中是否已存在该包 @@ -63,6 +66,8 @@ public class EPKGPackageServiceImpl implements EPKGPackageService { if (found) { return ResultUtil.fail(HttpStatus.BAD_REQUEST, MessageCode.EC0008); } + + EPKGPackage epkgPkg = new EPKGPackage(); BeanUtils.copyProperties(inputEPKGPackage, epkgPkg); @@ -87,6 +92,8 @@ public class EPKGPackageServiceImpl implements EPKGPackageService { @Override public ResponseEntity updateEPKGPkg(InputEPKGPackage inputEPKGPackage) { + inputEPKGPackage = Base64Util.decode(inputEPKGPackage); + if (StringUtils.isBlank(inputEPKGPackage.getId())) { return ResultUtil.fail(HttpStatus.BAD_REQUEST, MessageCode.EC0002); } diff --git a/src/main/java/com/easysoftware/application/rpmpackage/RPMPackageServiceImpl.java b/src/main/java/com/easysoftware/application/rpmpackage/RPMPackageServiceImpl.java index 89f3aa2615a07e40e2035338f8d949bfe8a47c7d..8797fb0b75d8a7d0277b51172d7bb421f5ae6351 100644 --- a/src/main/java/com/easysoftware/application/rpmpackage/RPMPackageServiceImpl.java +++ b/src/main/java/com/easysoftware/application/rpmpackage/RPMPackageServiceImpl.java @@ -16,6 +16,7 @@ import com.easysoftware.application.rpmpackage.dto.RPMPackageSearchCondition; import com.easysoftware.application.rpmpackage.vo.RPMPackageDetailVo; import com.easysoftware.application.rpmpackage.vo.RPMPackageMenuVo; import com.easysoftware.common.entity.MessageCode; +import com.easysoftware.common.utils.Base64Util; import com.easysoftware.common.utils.ResultUtil; import com.easysoftware.domain.rpmpackage.RPMPackage; import com.easysoftware.domain.rpmpackage.RPMPackageUnique; @@ -59,6 +60,8 @@ public class RPMPackageServiceImpl implements RPMPackageService { @Override public ResponseEntity insertRPMPkg(InputRPMPackage inputrPMPackage) { + inputrPMPackage = Base64Util.decode(inputrPMPackage); + if (StringUtils.isNotBlank(inputrPMPackage.getId())) { return ResultUtil.fail(HttpStatus.BAD_REQUEST, MessageCode.EC0002); } @@ -87,6 +90,8 @@ public class RPMPackageServiceImpl implements RPMPackageService { @Override public ResponseEntity updateRPMPkg(InputRPMPackage inputrPMPackage) { + inputrPMPackage = Base64Util.decode(inputrPMPackage); + if (StringUtils.isBlank(inputrPMPackage.getId())) { return ResultUtil.fail(HttpStatus.BAD_REQUEST, MessageCode.EC0002); } @@ -104,5 +109,4 @@ public class RPMPackageServiceImpl implements RPMPackageService { } return ResultUtil.success(HttpStatus.OK); } - } diff --git a/src/main/java/com/easysoftware/common/exception/Base64Exception.java b/src/main/java/com/easysoftware/common/exception/Base64Exception.java new file mode 100644 index 0000000000000000000000000000000000000000..fd7ccc6bc2a0b3d9acdcb1c5c49ba33fa6e9db21 --- /dev/null +++ b/src/main/java/com/easysoftware/common/exception/Base64Exception.java @@ -0,0 +1,11 @@ +package com.easysoftware.common.exception; + +public class Base64Exception extends RuntimeException { + private static final long serialVersionUID = 1L; + + public Base64Exception(String message) { + super(message); + } + public Base64Exception() { + } +} diff --git a/src/main/java/com/easysoftware/common/utils/Base64Util.java b/src/main/java/com/easysoftware/common/utils/Base64Util.java new file mode 100644 index 0000000000000000000000000000000000000000..1ca379de6b886213e9957a42ceae8a95167d0c38 --- /dev/null +++ b/src/main/java/com/easysoftware/common/utils/Base64Util.java @@ -0,0 +1,30 @@ +package com.easysoftware.common.utils; + +import java.lang.reflect.Field; +import java.util.Base64; + +import com.easysoftware.common.exception.Base64Exception; + +public class Base64Util { + public static T decode(T obj) { + Class clazz = obj.getClass(); + Field[] fields = clazz.getDeclaredFields(); + + for (Field field : fields) { + try { + field.setAccessible(true); + Object value = field.get(obj); + if (!(value instanceof String)) { + continue; + } + String base64Value = (String) value; + String decodeValue = new String(Base64.getDecoder().decode(base64Value)); + field.set(obj, decodeValue); + field.setAccessible(false); + } catch (Exception e) { + throw new Base64Exception(); + } + } + return obj; + } +}