AdmQrCode.java 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. package com.persagy.bdtp.adm.entity;
  2. import cn.hutool.core.util.StrUtil;
  3. import com.baomidou.mybatisplus.annotation.TableField;
  4. import com.baomidou.mybatisplus.annotation.TableName;
  5. import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
  6. import com.fasterxml.jackson.core.JsonProcessingException;
  7. import com.fasterxml.jackson.databind.ObjectMapper;
  8. import com.fasterxml.jackson.databind.node.ObjectNode;
  9. import com.persagy.dmp.common.helper.SpringHelper;
  10. import lombok.Data;
  11. import java.io.IOException;
  12. @Data
  13. @TableName(value = "adm_qr_code",autoResultMap = true)
  14. public class AdmQrCode extends BaseAdmDataEntity {
  15. private String qrCode;
  16. private String objId;
  17. @TableField(
  18. typeHandler = JacksonTypeHandler.class
  19. )
  20. private ObjectNode location;
  21. private String remark;
  22. @TableField(
  23. exist = false
  24. )
  25. private String strLocation;
  26. @Override
  27. public void serializeJsonProp() {
  28. if(location != null) {
  29. ObjectMapper objectMapper = SpringHelper.getBean(ObjectMapper.class);
  30. try {
  31. strLocation = objectMapper.writeValueAsString(location);
  32. } catch (JsonProcessingException e) {
  33. }
  34. location = null;
  35. }
  36. }
  37. @Override
  38. public void deserializeJsonProp() {
  39. if(StrUtil.isNotBlank(strLocation)) {
  40. ObjectMapper objectMapper = SpringHelper.getBean(ObjectMapper.class);
  41. try {
  42. location = objectMapper.readValue(strLocation, ObjectNode.class);
  43. } catch (IOException e) {
  44. }
  45. strLocation = null;
  46. }
  47. }
  48. }