package com.fufan.mtsaas.modules.unsafeevent.baqsjrecordoperation.model;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;
import java.io.Serializable;

/**
 * 不安全事件手术相关表
 *
 * @author Liby
 * @date 2025-02-18
 */
@Data
@ApiModel(description = "不安全事件手术相关表")
@TableName("baqsj_record_operation")
public class BaqsjRecordOperation implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId("id")
    @ApiModelProperty(value = "事件明细ID")
    private Long id;
    @ApiModelProperty(value = "事件记录ID")
    private Long eventId;
    @ApiModelProperty(value = "手术名称")
    private String operationName;
    @ApiModelProperty(value = "手术时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date operationTime;
    @ApiModelProperty(value = "主刀医生")
    private String operationDoctor;
    @ApiModelProperty(value = "一助")
    private String firstAssistant;
    @ApiModelProperty(value = "操作不良类型：460-有创，461-无创,462-MECT，463-其他")
    private String operationType;
    @ApiModelProperty(value = "操作不良其他说明")
    private String operationTypeOther;
    @ApiModelProperty(value = "手术操作类型：430-择期手术，431-限期手术，432-急诊手术，433-有创操作，434-诊断性手术，435-治疗性手术，436-姑息性手术，437-不知道，438-其他")
    private String surgicalOperationType;
    @ApiModelProperty(value = "手术操作其他说明")
    private String surgicalOperationTypeOther;
    @ApiModelProperty(value = "该操作是否为侵入性操作 0-否，1-是，2-不知道，3-其他")
    private String isInvasion;
    @ApiModelProperty(value = "侵入性操作其他说明")
    private String isInvasionOther;
    @ApiModelProperty(value = "错误类型:440-病人身份确认错误,441-体检错误,442-标本末贴标签,443-标本标签错误,444-标本遗失,445-收集标本的方法不正确,446-医疗器材不适当,447-环境设备不合理,448-未做检查(验),449-外置问题,450-发错检查(验)报告(包括发错、延迟、誊写等问题),451-其他")
    private String wrongType;
    @ApiModelProperty(value = "错误类型其他说明")
    private String wrongTypeOther;
    @ApiModelProperty(value = "非计划错误类型:470-术后出血，471-血肿，472-积液，473-吻合口痿，474-相关并发症，475-栓塞，476-首次手术末达效果，477-手术指征不清，478-管路滑脱，479-异物遗留，480-其他")
    private String nonplanedWrongType;
    @ApiModelProperty(value = "非计划错误类型其他说明")
    private String nonplanedWrongTypeOther;
    @ApiModelProperty(value = "创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createTime;
    @ApiModelProperty(value = "创建人")
    private String createBy;
    @ApiModelProperty(value = "更新时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date updateTime;
    @ApiModelProperty(value = "更新人")
    private String updateBy;

}
