package com.grkj.iscs.model

import com.grkj.iscs.R

object Constants {
    const val DEVICE_TYPE = 1 // 1.机柜 2.物料柜 3.手提柜 4.混合柜
    const val DEVICE_TYPE_NORMAL = "Android_Normal"     // 机柜
    const val DEVICE_TYPE_MATERIAL = "Android_Material" // 物资柜
    const val DEVICE_TYPE_PORTABLE = "Android_Portable" // 手提柜
    const val DEVICE_TYPE_HYBRID = "Android_Hybrid"     // 混合柜

    const val PERMISSION_REQUEST_CODE = 1
    const val BLE_LOCAL_NAME = "keyLock"

    const val USER_TYPE_LOCKER = "0"                // 上锁人
    const val USER_TYPE_COLOCKER = "1"              // 共锁人

    /**************************  角色  **************************/
    const val USER_ROLE_DRAWER = "jtdrawer"                 // 作业管理员/开票人
    const val USER_ROLE_LOCKER = "jtlocker"                 // 作业负责人/上锁人
    const val USER_ROLE_COLOCKER = "jtcolocker"             // 作业参与人/共锁人
    const val USER_ROLE_GUARD = "jtguard"                   // 作业观察员/安全员
    const val USER_ROLE_ADMHDWSETTER = "admhdwsetter"       // 硬件配置管理员
    const val USER_ROLE_ADMHDWTESTER = "admhdwtester"       // 硬件测试管理员

    /*************************  作业票状态  *************************/
    const val TICKET_STATUS_NOT_STARTED = "0"         // 未开始
    const val TICKET_STATUS_READY_TO_LOCK = "1"       // 待上锁
    const val TICKET_STATUS_PROCESSING = "2"          // 进行中
    const val TICKET_STATUS_READY_TO_UNLOCK = "3"     // 待解锁
    const val TICKET_STATUS_UNLOCKED = "4"            // 已解锁
    const val TICKET_STATUS_FINISHED = "5"            // 已结束
    const val TICKET_STATUS_CANCELED = "6"            // 已取消

    /*************************  工作状态——上锁人包含0-5，共锁人包含0、4、5  *************************/
    const val JOB_STATUS_NOT_STARTED = 0            // 未开始
    const val JOB_STATUS_ACQUIRE_LOCK = 1           // 取锁具
    const val JOB_STATUS_ACQUIRE_KEY = 2            // 取钥匙
    const val JOB_STATUS_READY_TO_LOCK = 3          // 待上锁
    const val JOB_STATUS_READY_TO_UNLOCK = 4        // 已上锁
    const val JOB_STATUS_UNLOCKED = 5               // 已解锁

    /*************************  SOP类型  *************************/
    data class SopType(val icon: Int, val type: Int, val title: String)

    val SOP_REPAIR = SopType(R.mipmap.repair, 0, "维修")
    val SOP_PRE_MAINTENANCE = SopType(R.mipmap.pre_maintenance, 1, "PM")
    val SOP_CHANGE_SHIFTS = SopType(R.mipmap.change_shifts, 2, "开收班")
    val SOP_CLEAN = SopType(R.mipmap.clean, 3, "清洗")
    val SOP_SWITCH_PRODUCT = SopType(R.mipmap.switch_product, 4, "换产")

    val mSopTypeList = mutableListOf(SOP_REPAIR, SOP_PRE_MAINTENANCE, SOP_CHANGE_SHIFTS, SOP_CLEAN, SOP_SWITCH_PRODUCT)
}