package com.tofly.ghrq_route.module.OfflineWork.domain;

import org.greenrobot.greendao.annotation.Convert;
import org.greenrobot.greendao.annotation.Entity;
import org.greenrobot.greendao.annotation.Generated;
import org.greenrobot.greendao.annotation.Id;
import org.greenrobot.greendao.annotation.NotNull;
import org.greenrobot.greendao.annotation.Unique;

import java.util.List;

@Entity(nameInDb = "DB_OFFLINE_WORK_JOB")
public class OfflineWorkJobBean {

    public static class OfflineWorkJobType{
        public static final int JOB_SIGN_UP_OFF_ADD = 1;    //签到签退
        public static final int JOB_UPLOAD_PHOTO_ADD = 2;    //照片上传
        public static final int JOB_PLAN_INFO_CHANGED = 3;    //计划状态改变上传
        public static final int JOB_DANGER_DANGER_ADD = 4;   //隐患上报
        public static final int JOB_DANGER_PLAN_ROUTE_ADD = 5;  //隐患巡检录入
        public static final int JOB_DANGER_PLAN_CLEAR_ADD = 6;  //隐患清除录入
        public static final int JOB_COMMON_DEVICE_ROUTE_ADD = 7;  //通用设备类巡检录入
        public static final int JOB_ADJUST_DEVICE_ROUTE_ADD = 8;  //调压设备类巡检录入
        public static final int JOB_BUILD_MANAGE_ADD = 10;  //工地发现
        public static final int JOB_BUILD_REPORT_ADD = 11;  //工地回报
        public static final int JOB_BUILD_LOG_ADD = 12;  //工地开启/关闭监护
        public static final int JOB_BUILD_NOTICE_PHOTO_ADD = 13;  //工地告知书图片上传
        public static final int JOB_BUILD_NOTICE_AUDIO_ADD = 14;  //工地告知书音频上传
        public static final int JOB_MY_JOB_ADD = 15;   //我的工单上报
        public static final int JOB_MY_SKETCH_ADD = 16;   //草图上报
        public static final int JOB_PLAN_POINTS_OVER_ADD = 106;  //巡检计划到位点上传
        public static final int JOB_SAVED_GPS_UPLOAD = 107;  //未提交的GPS记录上传
        public static final int JOB_BUILD_MANAGE_PROCESS = 17;  //工地过程管理
        public static final int JOB_RUSH_REPAIR_ADD = 18;  //抢维修新建
        public static final int JOB_RUSH_REPAIR_PROCESS = 19;  //抢维修过程管理
    }

    @Id @NotNull @Unique
    private String id;
    private int job_type;
    private String ref_id;
    @Convert(columnType = String.class, converter = List_String_Converter.class)
    private List<String> ref_photo_ids;
    @Convert(columnType = String.class, converter = List_String_Converter.class)
    private List<String> ref_audio_ids;
    @Convert(columnType = String.class, converter = List_String_Converter.class)
    private List<String> ref_data_ids;
    private String ref_data_id;
    private int is_upload = 0;
    private int need_backapi = 0;
    private String user_id;

    @Generated(hash = 203237364)
    public OfflineWorkJobBean(@NotNull String id, int job_type, String ref_id,
            List<String> ref_photo_ids, List<String> ref_audio_ids,
            List<String> ref_data_ids, String ref_data_id, int is_upload,
            int need_backapi, String user_id) {
        this.id = id;
        this.job_type = job_type;
        this.ref_id = ref_id;
        this.ref_photo_ids = ref_photo_ids;
        this.ref_audio_ids = ref_audio_ids;
        this.ref_data_ids = ref_data_ids;
        this.ref_data_id = ref_data_id;
        this.is_upload = is_upload;
        this.need_backapi = need_backapi;
        this.user_id = user_id;
    }
    @Generated(hash = 143675972)
    public OfflineWorkJobBean() {
    }

    public String getId() {
        return this.id;
    }
    public void setId(String id) {
        this.id = id;
    }
    public int getJob_type() {
        return this.job_type;
    }
    public void setJob_type(int job_type) {
        this.job_type = job_type;
    }
    public String getRef_id() {
        return this.ref_id;
    }
    public void setRef_id(String ref_id) {
        this.ref_id = ref_id;
    }
    public List<String> getRef_photo_ids() {
        return this.ref_photo_ids;
    }
    public void setRef_photo_ids(List<String> ref_photo_ids) {
        this.ref_photo_ids = ref_photo_ids;
    }
    public List<String> getRef_audio_ids() {
        return this.ref_audio_ids;
    }
    public void setRef_audio_ids(List<String> ref_audio_ids) {
        this.ref_audio_ids = ref_audio_ids;
    }
    public int getIs_upload() {
        return this.is_upload;
    }
    public void setIs_upload(int is_upload) {
        this.is_upload = is_upload;
    }
    public String getUser_id() {
        return this.user_id;
    }
    public void setUser_id(String user_id) {
        this.user_id = user_id;
    }
    public String getRef_data_id() {
        return this.ref_data_id;
    }
    public void setRef_data_id(String ref_data_id) {
        this.ref_data_id = ref_data_id;
    }
    public List<String> getRef_data_ids() {
        return this.ref_data_ids;
    }
    public void setRef_data_ids(List<String> ref_data_ids) {
        this.ref_data_ids = ref_data_ids;
    }
    public int getNeed_backapi() {
        return this.need_backapi;
    }
    public void setNeed_backapi(int need_backapi) {
        this.need_backapi = need_backapi;
    }
}
