BusHospitalLogEntity.java 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. package com.nb.bus.entity;
  2. import cn.hutool.json.JSONObject;
  3. import com.baomidou.mybatisplus.annotation.TableName;
  4. import com.nb.bus.enums.HospitalLogEnum;
  5. import com.nb.common.entity.TenantGenericEntity;
  6. import com.nb.common.exception.ExecuteResult;
  7. import io.swagger.annotations.ApiModel;
  8. import io.swagger.annotations.ApiModelProperty;
  9. import lombok.Data;
  10. import lombok.EqualsAndHashCode;
  11. import java.util.Optional;
  12. /**
  13. * @author lifang
  14. * @version 1.0.0
  15. * @ClassName BusHospitalLogEntity.java
  16. * @Description TODO
  17. * @createTime 2022年03月21日 11:25:00
  18. */
  19. @EqualsAndHashCode(callSuper = true)
  20. @Data
  21. @TableName(value = "bus_hospital_log",autoResultMap = true)
  22. @ApiModel(value="医院数据传输日志", description="医院数据传输日志")
  23. public class BusHospitalLogEntity extends TenantGenericEntity<String,String> {
  24. @ApiModelProperty("脚本是否执行成功")
  25. private boolean success;
  26. @ApiModelProperty("消息id")
  27. private String msgId;
  28. @ApiModelProperty("标识码(设备号、病号)")
  29. private String identityCode;
  30. @ApiModelProperty("信息类型")
  31. private HospitalLogEnum type;
  32. @ApiModelProperty("输入参数")
  33. private String input;
  34. @ApiModelProperty(value = "医院数据处理结果")
  35. private String result;
  36. @ApiModelProperty("错误消息")
  37. private String message;
  38. @ApiModelProperty("本消息处理运行时间")
  39. private long useTime;
  40. public static BusHospitalLogEntity of(ExecuteResult source,String tenantId,String patientCode){
  41. BusHospitalLogEntity result = new BusHospitalLogEntity();
  42. result.setMsgId(source.getMsgId());
  43. result.setTenantId(tenantId);
  44. result.setInput(source.getInput());
  45. result.setMessage(source.getMessage());
  46. result.setResult(Optional.ofNullable(source.getResult()).orElse(new JSONObject()).toString());
  47. result.setSuccess(source.isSuccess());
  48. result.setUseTime(source.getUseTime());
  49. result.setIdentityCode(patientCode);
  50. result.setType(HospitalLogEnum.HIS);
  51. return result;
  52. }
  53. }