Exemplo n.º 1
0
        public HttpResponseMessage GetInventoryInfo([FromBody] RequestInventoryApi requestInventoryApi)
        {
            var apiMessage = new ErpInventoryInfo();

            apiMessage.Header = new TotalHeader();
            var str = string.Empty;

            if (requestInventoryApi == null)
            {
                apiMessage.Header.IsSuccess = false;
                apiMessage.Header.Message   = "请求的参数为空";
                str = JsonConvert.SerializeObject(apiMessage);
                return(_utilManager.HttpMessage(str));
            }
            if (_searchInventoryManager.ValidationSecretKey(requestInventoryApi))
            {
                if (requestInventoryApi.PlatformMerchantCode != null)//如果传入的商品编码有值,则回传这些商品编码对应的库存信息
                {
                    apiMessage.Header.IsSuccess = true;
                    var XMInventoryList = _searchInventoryManager.GetXLMInventory(requestInventoryApi.PlatformMerchantCode, apiMessage.Header);
                    if (apiMessage.Header.IsSuccess)
                    {
                        apiMessage.InventoryList = XMInventoryList;
                    }
                }
                else
                {
                    if ((requestInventoryApi.PageNum > 0) && (requestInventoryApi.PageSize > 0))//判断页码和每页条数是否有
                    {
                        apiMessage.Header.IsSuccess = true;
                        var totalcount = 0;
                        apiMessage.InventoryList     = _searchInventoryManager.GetXLMInventory(requestInventoryApi.PageSize, requestInventoryApi.PageNum, ref totalcount);
                        apiMessage.Header.TotalCount = totalcount;
                    }
                    else
                    {
                        apiMessage.Header.IsSuccess = false;
                        apiMessage.Header.Message   = "页码和每页请求条数必填且大于0";
                        str = JsonConvert.SerializeObject(apiMessage);
                        return(_utilManager.HttpMessage(str));
                    }
                }
            }
            else
            {
                apiMessage.Header.IsSuccess = false;
                apiMessage.Header.Message   = "秘钥出错";
                str = JsonConvert.SerializeObject(apiMessage);
                return(_utilManager.HttpMessage(str));
            }
            str = JsonConvert.SerializeObject(apiMessage);
            return(_utilManager.HttpMessage(str));
        }
Exemplo n.º 2
0
//        public List<ErpInventoryList> GetXLMInventory(int pageSize, int pageNum, ref int totalCount)
//        {
//            try
//            {
//                DateTime date = DateTime.Parse(DateTime.Now.ToShortDateString());
//                var sql = string.Format(@"select top {0}  c.PlatformMerchantCode,b.ProductName,a.BarCode,b.ProductUnit as Unit,a.Inventory
//    from XM_XLMInventory a join XM_Product b on a.ManufacturersCode = b.ManufacturersCode
//   left join XM_ProductDetails c on c.ProductId = b.Id
//    where  a.CreateDate > '{1}' and b.IsEnable = 0 and c.IsEnable = 0 and a.ID not in
//    (select top {2} a.ID from XM_XLMInventory a join XM_Product b on a.ManufacturersCode = b.ManufacturersCode
//     left join XM_ProductDetails c on c.ProductId = b.Id
//    where  a.CreateDate > '{1}' and b.IsEnable = 0 and c.IsEnable = 0 order by a.ID) order by a.ID  ", pageSize, date, pageSize * (pageNum - 1));//查询喜临门当日库存的sql语句
//                var dt = SqlDataHelper.GetDatatableBySql(sql);
//                var ErpInventoryList = CurUtilManager.ToEntity<ErpInventoryList>(dt);
//                var xlmPlatformMerchantCodeList = getXLMInventory();
//                #region
//                var sqlWhere = string.Join("','", xlmPlatformMerchantCodeList);
//                var sql1 = string.Format(@"select * from(
//  (select c.PlatformMerchantCode,b.ProductName,a.BarCode,b.ProductUnit as Unit,a.Inventory
//    from XM_XLMInventory a join XM_Product b on a.ManufacturersCode = b.ManufacturersCode
//   left join XM_ProductDetails c on c.ProductId = b.Id
//    where  b.IsEnable = 0 and c.IsEnable = 0
//  ) union (
//select  c.PlatformMerchantCode,b.ProductName,null as BarCode, b.ProductUnit as Unit,a.CanOrderCount as Inventory
//    from XM_InventoryInfo a join XM_Product b on a.PlatformMerchantCode = b.ManufacturersCode
//   left join XM_ProductDetails c on c.ProductId = b.Id
//    where  b.IsEnable = 0 and c.IsEnable = 0
//    )) as tb  ", pageSize, sqlWhere, pageSize * (pageNum - 1));//查询库存管理中的物品库存信息
//                var dt1 = SqlDataHelper.GetDatatableBySql(sql1);
//                var ErpInventoryList1 = CurUtilManager.ToEntity<ErpInventoryList>(dt1);
//                #endregion

//                totalCount = ErpInventoryList.Distinct().Count();
//                return ErpInventoryList.ToList();
//            }
//            catch (Exception ex)
//            {
//                return null;
//            }
//        }

        public bool ValidationSecretKey(RequestInventoryApi requestInventoryApi)
        {
            var SecretKey = requestInventoryApi.SecretKey;

            requestInventoryApi.SecretKey = null;
            var objectJson = JsonConvert.SerializeObject(requestInventoryApi);
            var SecretKey1 = CurUtilManager.MD5Encrypt(string.Format("{0}Hozest88582", objectJson));//获取参数加密的字符串

            if (SecretKey.Equals(SecretKey1))
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
Exemplo n.º 3
0
        public string GetIntenctroy()
        {
            var    entity = new RequestInventoryApi();
            string url    = "http://www.hozest.com.cn:30003/WebApi/Values/GetInventoryInfo";
            //string url = "http://localhost:16566/WebApi/Values/GetInventoryInfo";
            string         json     = "";
            Encoding       encoding = Encoding.UTF8;
            HttpWebRequest request  = (HttpWebRequest)WebRequest.Create(url);

            request.Method = "post";
            request.Headers.Add("userName", "wudaoshangcheng");
            request.Headers.Add("passWord", "wd123456");
            request.Headers.Add("accessToken", "Hhum0fYEXMUKSb2QWUi0");
            //request.KeepAlive = true;
            request.Accept      = "text/html, application/xhtml+xml, */*";
            request.ContentType = "application/json;charset=utf-8";
            //entity.PlatformMerchantCode = new List<string>() { "4897086340269", "4903367304032", "1006010001" };
            entity.PageNum  = 1;
            entity.PageSize = 200;
            var signstr = string.Format("{0}Hozest88582", JsonConvert.SerializeObject(entity));

            var rsignstrMd5 = _utilManager.MD5Encrypt(signstr);

            entity.SecretKey = rsignstrMd5;

            byte[] buffer = encoding.GetBytes(JsonConvert.SerializeObject(entity));
            request.ContentLength = buffer.Length;

            request.GetRequestStream().Write(buffer, 0, buffer.Length);
            HttpWebResponse response = (HttpWebResponse)request.GetResponse();

            using (StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8))
            {
                json = reader.ReadToEnd();
            }
            return(json);
        }