public static string convert2MCS(AVEHICLE.VehicleState vehicleState, ProtocolFormat.OHTMessage.CompleteStatus tran_cmp_status) { switch (tran_cmp_status) { case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusMove: case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusLoad: case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusUnload: case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusLoadunload: case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusHome: case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusOverride: case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusCstIdrenmae: case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusMtlhome: case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusMoveToCharger: case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusSystemOut: case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusSystemIn: case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusTechingMove: return(CMD_Result_Successful); //A0.01 case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusCancel: //A0.01 case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusAbort: //A0.02 case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusVehicleAbort: case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusLongTimeInaction: case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusForceFinishByOp: return(CMD_Result_Unsuccessful); case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusIdreadFailed: return(CMD_Result_BCRError); case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusIdmisMatch: return(CMD_Result_CarrierIDUnmach); case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusInterlockError: case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusCancel: //A0.01 case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusAbort: //A0.01 //if (vehicleState == AVEHICLE.VehicleState.ACQUIRING) //{ // return CMD_Result_DisableLoad; //} //else if (vehicleState == AVEHICLE.VehicleState.DEPOSITING) //{ // return CMD_Result_DisableUnload; //} //else //{ // return CMD_Result_Unsuccessful; //} return(CMD_Result_InterlockError); case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusVehicleAbort: //A0.02 return(CMD_Result_VehicleAbortError); //A0.02 default: throw new Exception("參數錯誤"); //TODO 要帶入正確的Exception。 } }
//public const string CMD_Result_InterlockError = "64"; public static string convert2MCS(ProtocolFormat.OHTMessage.CompleteStatus tran_cmp_status) { switch (tran_cmp_status) { case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusMove: case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusScan: case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusLoad: case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusUnload: case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusLoadunload: case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusHome: case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusOverride: case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusCstIdrenmae: case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusMtlhome: case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusMoveToMtl: case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusSystemOut: case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusSystemIn: case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusTechingMove: return(CMD_Result_Successful); case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusCancel: case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusAbort: case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusVehicleAbort: case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusInterlockError: return(CMD_Result_Unsuccessful); //return CMD_Result_InterlockError; case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusIdmisMatch: return(CMD_Result_IDMismatch); case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusIdreadFailed: return(CMD_Result_IDReadFailed); case ProtocolFormat.OHTMessage.CompleteStatus.CmpStatusIdreadDuplicate: return(CMD_Result_IDDuplicate); default: throw new Exception("參數錯誤"); //TODO 要帶入正確的Exception。 } }