Exemple #1
0
        /// <summary>
        /// 验证是否是外箱条码或者托盘条码
        /// </summary>
        /// <param name="BarCode"></param>
        /// <param name="SerialNo"></param>
        /// <param name="strError"></param>
        /// <returns>返回序列号和条码类型</returns>
        public bool GetSerialNoByBarCode(string BarCode, ref string SerialNo, ref string BarCodeType, ref string strError)
        {
            bool deCodeResult = false;

            //如果没有@分隔符,就认为是序列号
            if (OutBarCode_DeCode.InvalidBarcode(BarCode) == false)
            {
                BarCodeType = OutBarCode_DeCode.GetSubBarcodeType(BarCode);

                if (BarCodeType == "3")
                {
                    BarCodeType  = "1";
                    SerialNo     = OutBarCode_DeCode.GetSubBarcodeSerialNo(BarCode);
                    deCodeResult = true;
                }
                else if (BarCodeType == "4")
                {
                    BarCodeType  = "2";
                    SerialNo     = BarCode;
                    deCodeResult = true;
                }
                else
                {
                    deCodeResult = false;
                    strError     = "您扫描的不是外箱条码或者托盘条码,请确认!";
                }
                //if (BarCode.Contains("P"))
                //{
                //    BarCodeType = "2";
                //}
                //else
                //{
                //    BarCodeType = "1";
                //}
                //SerialNo = BarCode;
                //deCodeResult = true;
            }
            else
            {
                if (OutBarCode_DeCode.GetBarcodeType(BarCode) == "0")
                {
                    deCodeResult = false;
                    strError     = "您扫描的不是外箱条码或者托盘条码,请确认!";
                }
                else
                {
                    BarCodeType  = OutBarCode_DeCode.GetBarcodeType(BarCode);
                    deCodeResult = true;
                    SerialNo     = OutBarCode_DeCode.GetSerialNo(BarCode);
                }
            }

            return(deCodeResult);
        }