public static byte[] SetDistanceData(CombinationCardDataParam param, ref int functionbyte)
        {
            int typebyte = SetCardTypeByte(param.CardTypeParam);

            functionbyte = SetCardFunctionByte(param.CardFunctioinParam);

            StringBuilder sb = new StringBuilder();

            sb.AppendFormat("{0:X2}", functionbyte);
            sb.AppendFormat("{0:X4}", param.Count);
            if (param.ViceCards != null && param.ViceCards.Count > 0)
            {
                foreach (CombinationCardViceCardDataParam item in param.ViceCards)
                {
                    sb.AppendFormat("{0:yyMMdd}", item.ViceCardTime);
                    sb.AppendFormat("{0:X4}", item.ViceCardPartition);
                    sb.AppendFormat("{0:X4}", item.ViceCardCount);
                    sb.Append(item.ViceCardNumber);
                }
            }
            else
            {
                sb.Append("FFFFFFFFFFFFFFFFFFFFFFFFFF");
            }
            return(PortAgreement.GetDistanceContent(param.CardNumber, typebyte, 0, sb.ToString()));
        }
        public static byte[] SetDistanceData(CombinationCardDataParam param)
        {
            int functionbyte = 0;

            return(SetDistanceData(param, ref functionbyte));
        }