export const jobMixin = {
    data () {
        return {
            status: [
                {
                    k: 'TODO',
                    v: '待执行'
                },
                {
                    k: 'DOING',
                    v: '执行中'
                },
                {
                    k: 'ARCHIVED',
                    v: '已归档'
                },
            ],
            task_status: [
                {
                    k: 'TODO',
                    v: '未开始'
                },
                {
                    k: 'DOING',
                    v: '进行中'
                },
                {
                    k: 'FINISHED',
                    v: '已结束'
                },
            ],
            appointmentStatus: [
                {
                    k: 'NOT',
                    v: '未发送'
                },
                {
                    k: 'SENDING',
                    v: '待发送'
                },
                {
                    k: 'SENDED',
                    v: '已发送'
                }
            ],
            auditStatus: [
                {
                    k: 'TODO',
                    v: '待审核'
                },
                {
                    k: 'PASS',
                    v: '审核通过'
                },
                {
                    k: 'REJECT',
                    v: '审核不通过'
                }
            ],
            jobStatusV2:[
                {
                    k: 'AUDIT',
                    v: '审核中'
                },
                {
                    k: 'REJECT',
                    v: '已驳回'
                },
                {
                    k: 'TODO',
                    v: '待执行'
                },
                {
                    k: 'DOING',
                    v: '执行中'
                },
                {
                    k: 'ARCHIVED',
                    v: '已归档'
                }
            ],
            auditStatusV2:[
                {
                    k: 'NOT',
                    v: '未下发'
                },
                {
                    k: 'AUDIT',
                    v: '待审批'
                },
                {
                    k: 'SENDED',
                    v: '审批通过'
                },
                {
                    k: 'REJECT',
                    v: '被驳回'
                },
            ],
            jobType: [
                {
                    k: 'NORMAL',
                    v: '日常检查'
                },
                {
                    k: 'SPECIAL',
                    v: '专项检查'
                },
                {
                    k: 'REPORT',
                    v: '举报检查'
                },
                {
                    k: 'TOWNS',
                    v: '乡镇检查'
                },
                {
                    k: 'OTHER',
                    v: '其他检查'
                }
            ],
            jobSource: [
                {
                    k: 'RANDOM',
                    v: '双随机'
                },
                {
                    k: 'CREATED',
                    v: '自建任务'
                },
                {
                    k: 'REPORT',
                    v: '举报投诉'
                }
            ]
        }
    },
    methods: {
        parseJobStatus(v) {
            const t = this.status.filter(item => v == item.k)
            return t && t.length > 0 ? t[0].v : v
        },
        parseJobStatus2(v) {
            const t = this.jobStatusV2.filter(item => v == item.k)
            return t && t.length > 0 ? t[0].v : v
        },
        parseAppointmentStatus(v) {
            const t = this.appointmentStatus.filter(item => v == item.k)
            return t && t.length > 0 ? t[0].v : v
        },
        parseAuditStatus(v) {
            const t = this.auditStatus.filter(item => v == item.k)
            return t && t.length > 0 ? t[0].v : v
        },
        parseAuditStatusV2(v) {
            const t = this.auditStatusV2.filter(item => v == item.k)
            return t && t.length > 0 ? t[0].v : v
        },
        parseJobType(v) {
            const t = this.jobType.filter(item => v == item.k)
            return t && t.length > 0 ? t[0].v : v
        },
        parseJobSource(v) {
            const t = this.jobSource.filter(item => v == item.k)
            return t && t.length > 0 ? t[0].v : v
        },
        parseJobAuditStatus(statusCode){
            if(!statusCode || "AUDIT" === statusCode){
                return "审核中"
            }

            if("REJECT" === statusCode){
                return "已驳回"
            }

            if("TODO" === statusCode || "DOING" === statusCode || "ARCHIVED" === statusCode){
                return "已通过"
            }
        },
        parseJobResult(item) {
            if (item.job_status == 'ARCHIVED') {
                if (item.enforce_result == 'OVERPASS') {
                    return '不检查'
                } else {
                  if (item.immediately_file_id > 0 || item.deadline_file_id > 0) {
                    return '不合格'
                  }
                  else {
                    if (item.enforce_result) {
                      const result = item.enforce_result;
                      if (result == 'CORRECT_IMMEDIATELY' || result == 'DEADLINE_CORRECT') {
                        return '不合格'
                      }
                    }
                    return '合格'
                  }
                }
            }
            return ''
        },
    }
}
