Beispiel #1
0
        /// <summary>
        /// 查询顺丰下单返回明细
        /// </summary>
        public IEnumerable <WMS_SFDetail> GetWMS_SFDetailByCondition(WMS_SFDetail SearchCondition, int PageIndex, int PageSize, out int RowCount)
        {
            StringBuilder sb = new StringBuilder();

            if (SearchCondition.ID >= 0)
            {
                sb.Append(" and ID=" + SearchCondition.ID);
            }
            if (SearchCondition.OID.HasValue)
            {
                sb.Append(" and OID=" + SearchCondition.OID.GetValueOrDefault());
            }
            if (!string.IsNullOrEmpty(SearchCondition.OrderNumber))
            {
                sb.Append("and OrderNumber='" + SearchCondition.OrderNumber.Trim() + "' ");
            }
            if (!string.IsNullOrEmpty(SearchCondition.waybillNo))
            {
                sb.Append("and waybillNo='" + SearchCondition.waybillNo.Trim() + "' ");
            }

            int tempRowCount = 0;

            DbParam[] dbParams = new DbParam[]
            {
                new DbParam("@Where", DbType.String, sb.ToString(), ParameterDirection.Input),
                new DbParam("@PageIndex", DbType.Int32, PageIndex, ParameterDirection.Input),
                new DbParam("@PageSize", DbType.Int32, PageSize, ParameterDirection.Input),
                new DbParam("@RowCount", DbType.Int32, tempRowCount, ParameterDirection.Output)
            };
            DataTable dt = this.ExecuteDataTable("Proc_GetWMS_SFDetailByCondition", dbParams);

            RowCount = (int)dbParams[3].Value;
            return(dt.ConvertToEntityCollection <WMS_SFDetail>());
        }
Beispiel #2
0
        public static IEnumerable <WMS_SFDetail> AddSFDetail(long OID, string creator, string resxml)
        {
            string result = string.Empty;
            //string resxml = "<?xml version='1.0' encoding='UTF-8'?><Response service=\"OrderService\"><Head>OK</Head><Body><OrderResponse mailno=\"279124615041\" filter_result=\"2\" orderid=\"OR1082021030000002\" destcode=\"023\" origincode=\"028\"><rls_info invoke_result=\"OK\" rls_code=\"1000\" rls_errormsg=\"279124615041:\"><rls_detail waybillNo=\"279124615041\" sourceCityCode=\"028\" sourceDeptCode=\"028\" destCityCode=\"023\" destDeptCode=\"023SA\" destTeamCode=\"044\" destTransferCode=\"023W\" destRouteLabel=\"023SA-044\" proName=\"顺丰标快\" cargoTypeCode=\"T6\" limitTypeCode=\"T6\" expressTypeCode=\"B1\" codingMapping=\"F11\" xbFlag=\"0\" printFlag=\"000000000\" twoDimensionCode=\"MMM ={ 'k1':'023W','k2':'023SA','k3':'044','k4':'T6','k5':'279124615041','k6':'','k7':'f7985412'}\" proCode=\"T6\" printIcon=\"00000000\" checkCode=\"f7985412\" destGisDeptCode=\"023SA\" /></rls_info></OrderResponse></Body></Response>";

            //解析接口返回的xml
            XmlDocument doc = new XmlDocument();

            doc.LoadXml(resxml);
            //获取responses 下的所有response 节点
            XmlNodeList mylist = doc.SelectNodes("/Response/Head");
            string      head   = mylist[0].InnerText.Trim();

            if (head.ToUpper() == "OK")
            {
                List <WMS_SFDetail> sfDetailList = new List <WMS_SFDetail>();
                XmlNodeList         mylist1      = doc.SelectNodes("/Response/Body/OrderResponse");
                if (mylist1 != null)
                {
                    string      OrderNumber = mylist1[0].Attributes["orderid"].Value.Trim(); //订单号
                    string      waybillNo   = mylist1[0].Attributes["mailno"].Value.Trim();  //快递单号
                    XmlNodeList mydetail    = doc.SelectNodes("/Response/Body/OrderResponse/rls_info/rls_detail");
                    if (mydetail != null)                                                    //attributeValue
                    {
                        WMS_SFDetail sFDetail = new WMS_SFDetail()
                        {
                            ID                  = 0,
                            OID                 = OID,                                                                                                                     //订单ID
                            OrderNumber         = OrderNumber,                                                                                                             //订单号
                            waybillNo           = waybillNo,                                                                                                               //快递单号
                            sourceTransferCode  = mydetail[0].Attributes["sourceTransferCode"] != null ? mydetail[0].Attributes["sourceTransferCode"].Value.Trim() : "",   //原寄地中转场
                            sourceCityCode      = mydetail[0].Attributes["sourceCityCode"] != null ? mydetail[0].Attributes["sourceCityCode"].Value.Trim() : "",           //原寄地城市代码
                            sourceDeptCode      = mydetail[0].Attributes["sourceDeptCode"] != null ? mydetail[0].Attributes["sourceDeptCode"].Value.Trim() : "",           //
                            sourceTeamCode      = mydetail[0].Attributes["sourceTeamCode"] != null ? mydetail[0].Attributes["sourceTeamCode"].Value.Trim() : "",           //
                            destCityCode        = mydetail[0].Attributes["destCityCode"] != null ? mydetail[0].Attributes["destCityCode"].Value.Trim() : "",               //
                            destDeptCode        = mydetail[0].Attributes["destDeptCode"] != null ? mydetail[0].Attributes["destDeptCode"].Value.Trim() : "",               //
                            destDeptCodeMapping = mydetail[0].Attributes["destDeptCodeMapping"] != null ? mydetail[0].Attributes["destDeptCodeMapping"].Value.Trim() : "", //
                            destTeamCode        = mydetail[0].Attributes["destTeamCode"] != null ? mydetail[0].Attributes["destTeamCode"].Value.Trim() : "",               //
                            destTeamCodeMapping = mydetail[0].Attributes["destTeamCodeMapping"] != null ? mydetail[0].Attributes["destTeamCodeMapping"].Value.Trim() : "", //
                            destTransferCode    = mydetail[0].Attributes["destTransferCode"] != null ? mydetail[0].Attributes["destTransferCode"].Value.Trim() : "",       //
                            destRouteLabel      = mydetail[0].Attributes["destRouteLabel"] != null ? mydetail[0].Attributes["destRouteLabel"].Value.Trim() : "",           //
                            proName             = mydetail[0].Attributes["proName"] != null ? mydetail[0].Attributes["proName"].Value.Trim() : "",                         //
                            cargoTypeCode       = mydetail[0].Attributes["cargoTypeCode"] != null ? mydetail[0].Attributes["cargoTypeCode"].Value.Trim() : "",             //
                            limitTypeCode       = mydetail[0].Attributes["limitTypeCode"] != null ? mydetail[0].Attributes["limitTypeCode"].Value.Trim() : "",             //
                            expressTypeCode     = mydetail[0].Attributes["expressTypeCode"] != null ? mydetail[0].Attributes["expressTypeCode"].Value.Trim() : "",         //
                            codingMapping       = mydetail[0].Attributes["codingMapping"] != null ? mydetail[0].Attributes["codingMapping"].Value.Trim() : "",             //
                            codingMappingOut    = mydetail[0].Attributes["codingMappingOut"] != null ? mydetail[0].Attributes["codingMappingOut"].Value.Trim() : "",       //
                            xbFlag              = mydetail[0].Attributes["xbFlag"] != null ? mydetail[0].Attributes["xbFlag"].Value.Trim() : "",                           //
                            printFlag           = mydetail[0].Attributes["printFlag"] != null ? mydetail[0].Attributes["printFlag"].Value.Trim() : "",                     //
                            twoDimensionCode    = mydetail[0].Attributes["twoDimensionCode"] != null ? mydetail[0].Attributes["twoDimensionCode"].Value.Trim() : "",       //
                            proCode             = mydetail[0].Attributes["proCode"] != null ? mydetail[0].Attributes["proCode"].Value.Trim() : "",                         //
                            printIcon           = mydetail[0].Attributes["printIcon"] != null ? mydetail[0].Attributes["printIcon"].Value.Trim() : "",                     //
                            abFlag              = mydetail[0].Attributes["abFlag"] != null ? mydetail[0].Attributes["abFlag"].Value.Trim() : "",                           //
                            destPortCode        = mydetail[0].Attributes["destPortCode"] != null ? mydetail[0].Attributes["destPortCode"].Value.Trim() : "",               //
                            destCountry         = mydetail[0].Attributes["destCountry"] != null ? mydetail[0].Attributes["destCountry"].Value.Trim() : "",                 //
                            destPostCode        = mydetail[0].Attributes["destPostCode"] != null ? mydetail[0].Attributes["destPostCode"].Value.Trim() : "",               //
                            goodsValueTotal     = mydetail[0].Attributes["goodsValueTotal"] != null ? mydetail[0].Attributes["goodsValueTotal"].Value.Trim() : "",         //
                            currencySymbol      = mydetail[0].Attributes["currencySymbol"] != null ? mydetail[0].Attributes["currencySymbol"].Value.Trim() : "",           //
                            goodsNumber         = mydetail[0].Attributes["goodsNumber"] != null ? mydetail[0].Attributes["goodsNumber"].Value.Trim() : "",                 //
                            checkCode           = mydetail[0].Attributes["checkCode"] != null ? mydetail[0].Attributes["checkCode"].Value.Trim() : "",                     //
                            str1                = "",
                            str2                = "",
                            str3                = "",
                            str4                = "",
                            str5                = "",
                            str6                = "",
                            str7                = "",
                            str8                = "",
                            str9                = "",
                            str10               = "",
                            Creator             = creator,
                            CreateTime          = DateTime.Now,
                        };
                        sfDetailList.Add(sFDetail);
                    }
                }

                if (sfDetailList != null && sfDetailList.Any())
                {
                    return(new AMSUploadService().AddWMS_SFDetail(sfDetailList));
                }
            }

            return(null);
        }