示例#1
0
        private static void SerializePersons(List <FieldNameInputValuePairObject> serializedObject, IList <DJListRow> djRows)
        {
            Encoding enc = new UTF8Encoding(true, true);

            foreach (var value in djRows)
            {
                if (value.Row[6].Any(char.IsDigit))
                {
                    if (!personKeys.Contains(value.Row[6].Trim()) && value.Row[5] != "N/A" && !string.IsNullOrEmpty(value.Row[5]))
                    {
                        personKeys.Add(value.Row[6].Trim());
                        var pairList = new List <FieldNameInputValuePair>();
                        var rowVal5  = value.Row[5].Count() > 32 ? value.Row[5].Substring(0, 32) : value.Row[5];
                        var rowVal1  = value.Row[1].Count() > 32 ? value.Row[1].Substring(0, 32) : value.Row[1];
                        var rowVal0  = value.Row[0].Count() > 32 ? value.Row[0].Substring(0, 32) : value.Row[0];
                        var rowVal6  = value.Row[6].Count() > 16 ? value.Row[6].Substring(0, 16) : value.Row[6];

                        var rowValExt5 = value.Row[5].Count() > 32 ? value.Row[5].Substring(32, value.Row[5].Count() - 32) : "";
                        var rowValExt1 = value.Row[1].Count() > 32 ? value.Row[1].Substring(32, value.Row[1].Count() - 32) : "";
                        var rowValExt0 = value.Row[0].Count() > 32 ? value.Row[0].Substring(32, value.Row[0].Count() - 32) : "";
                        var rowValExt6 = value.Row[6].Count() > 16 ? value.Row[6].Substring(16, value.Row[6].Count() - 16) : "";

                        var rowVal7    = value.Row[7].Count() > 8 ? value.Row[7].Substring(0, 8) : value.Row[7];
                        var rowValExt7 = value.Row[7].Count() > 8 ? value.Row[7].Substring(8, value.Row[7].Count() - 8) : "";

                        var rowVal8    = CountryCodes.GetCountryCode(value.Row[8]);
                        var rowValExt8 = "";

                        var rowVal10    = value.Row[10].Count() > 1 ? value.Row[10].Substring(0, 1) : value.Row[10];
                        var rowValExt10 = value.Row[10].Count() > 1 ? value.Row[10].Substring(1, value.Row[10].Count() - 1) : "";

                        var rowVal11 = value.Row[11].Replace(".", string.Empty).Replace(",", string.Empty).Replace("\\", string.Empty).Replace("/", string.Empty).Count() > 8
                            ? value.Row[11].Replace(".", string.Empty).Replace(",", string.Empty).Replace("\\", string.Empty).Replace("/", string.Empty).Substring(0, 8)
                            : value.Row[11].Replace(".", string.Empty).Replace(",", string.Empty).Replace("\\", string.Empty).Replace("/", string.Empty);
                        var dateRowVal11 = rowVal11.Count() < 8?"" : rowVal11.Substring(4, 4) + rowVal11.Substring(2, 2) + rowVal11.Substring(0, 2);
                        var rowValExt11  = dateRowVal11.Count() > 8 ? dateRowVal11.Substring(8, dateRowVal11.Count() - 8) : "";

                        var pair1 = new FieldNameInputValuePair("LASTNAME_COMPANYNAME", enc.GetString(enc.GetBytes(rowVal5)), enc.GetString(enc.GetBytes(rowValExt5)));
                        var pair2 = new FieldNameInputValuePair("FIRST_NAME", enc.GetString(enc.GetBytes(rowVal1)), enc.GetString(enc.GetBytes(rowValExt1)));
                        var pair3 = new FieldNameInputValuePair("CUSTNO", rowVal6, rowVal6);

                        var pair4 = new FieldNameInputValuePair("CUSTCONTACT", "", "");
                        var pair5 = new FieldNameInputValuePair("H_COUNTRY", rowVal8, rowValExt8);
                        var pair6 = new FieldNameInputValuePair("BIRTHDATE", dateRowVal11, rowValExt11);
                        var pair7 = new FieldNameInputValuePair("GENDER", enc.GetString(enc.GetBytes(rowVal10)), enc.GetString(enc.GetBytes(rowValExt10)));

                        pairList.Add(pair1);
                        pairList.Add(pair2);
                        pairList.Add(pair3);
                        pairList.Add(pair4);
                        pairList.Add(pair5);
                        pairList.Add(pair6);
                        pairList.Add(pair7);

                        pairList.Add(new FieldNameInputValuePair("INSTITUTE", enc.GetString(enc.GetBytes("GE00")), enc.GetString(enc.GetBytes("GE00"))));
                        var serializedPairObject = new FieldNameInputValuePairObject();
                        serializedPairObject.FieldNameInputValuePairList = pairList;
                        serializedPairObject.CustNo = rowVal6;
                        serializedObject.Add(serializedPairObject);
                    }
                }
            }
        }