| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256 |
- using System;
- using System.Collections.Generic;
- using System.Configuration;
- using System.Linq;
- using System.Web;
- using System.Collections;
- using Newtonsoft.Json.Linq;
- using DK.XuWei.WebMes;
- using Curtain.Log;
- /// <summary>
- /// 包装_乾润接口 xuwei 2020-07-05
- /// </summary>
- public static class QianRunApi
- {
- public static string ip = ConfigurationManager.AppSettings["QianRunServer"].ToString();
- /// <summary>
- /// apiid = 31012
- /// 1获取最优出库产品型号 参数为空取全部
- /// </summary>
- /// <returns></returns>
- public static string GetGoodsCode(string goodsCode= "",string goodsSeries="",string isFull="1")
- {
- //正式数据
- string url = ip + "/api/ICetr/GetStorageGoodsCount";
- Hashtable ht = new Hashtable();
- ht.Add("goodstype", goodsCode);
- ht.Add("goodsseries", goodsSeries);
- ht.Add("isfull", isFull);
- string result = "";
- try
- {
- result = JsonClient.Get(url, ht);
- //Logger.Debug("包装_乾润接口:" + url + "?" + JsonClient.ParaToString(ht));
- JObject json = JObject.Parse(result);
- ApiLog.WriteApiLog(
- "包装_乾润_库存查询", url + "?" + JsonClient.ParaToString(ht),
- Convert.ToBoolean(json["Success"]), "请求结果太长,不保存结果值!", 31012);
- return formatResult(result);
- }
- catch
- {
- result = "包装_乾润接口请求失败!";
- //Logger.Debug("包装_乾润接口请求失败:" + url + "?" + JsonClient.ParaToString(ht));
- ApiLog.WriteApiLog(
- "包装_乾润_库存查询", url + "?" + JsonClient.ParaToString(ht),
- false, result, 31012);
- return new JsonResult() { success = false, status = JsonStatus.error, message = result }.ToJson();
- }
- //模拟数据
- //string result = @"
- //{'Success':true,'Status':0,'Lists':
- // [
- // {'GoodsType':'H0171M','GoodsSeries':'1','GoodsCount':90},
- // {'GoodsType':'H0171M','GoodsSeries':'2','GoodsCount':80}
- // ]
- //}".Replace("'","\"");
- //Logger.Debug("包装_乾润接口模拟数据:" + url);
- //return result;
- }
- /// <summary>
- /// apiid = 31022
- /// 2出库单创建
- /// </summary>
- /// <param name="packingLine">包装线号</param>
- /// <param name="order">订单号</param>
- /// <param name="goodsCode">产品编码</param>
- /// <param name="goodsSeries">产品系列号,智能为1,连体为2</param>
- /// <param name="goodsCount">产品数量</param>
- /// <param name="level">出库等级 默认为0</param>
- /// <param name="dateTime">时间戳</param>
- /// <returns></returns>
- public static string CreateOutStorageOrder(string packingLine,string order,string goodsCode,string goodsSeries,int goodsCount,float level,string dateTime)
- {
- string url = ip + "/api/ICetr/CreateOutStorageOrder";
- Hashtable ht = new Hashtable();
- ht.Add("packingline", packingLine);
- ht.Add("order", order);
- ht.Add("goodstype", goodsCode);
- ht.Add("goodsseries", goodsSeries);
- ht.Add("goodscount", goodsCount);
- ht.Add("level", level);
- ht.Add("datetime", dateTime);
- string result = "";
- try
- {
- result = JsonClient.Get(url, ht);
- //Logger.Debug("包装_乾润接口请求成功:" + url + "?" + JsonClient.ParaToString(ht));
- JObject json = JObject.Parse(result);
- ApiLog.WriteApiLog(
- "包装_乾润_出库单创建", url + "?" + JsonClient.ParaToString(ht),
- Convert.ToBoolean(json["Success"]), result, 31022);
- return formatResult(result);
- }
- catch
- {
- result = "包装_乾润接口请求失败!";
- //Logger.Debug("包装_乾润接口请求失败:" + url + "?" + JsonClient.ParaToString(ht));
- ApiLog.WriteApiLog(
- "包装_乾润_出库单创建", url + "?" + JsonClient.ParaToString(ht),
- false, result, 31022);
- return new JsonResult() { success = false, status = JsonStatus.error, message = result}.ToJson();
- }
- }
- /// <summary>
- /// apiid=31032
- /// 3出库单更新与删除数据接口
- /// </summary>
- /// <param name="order">订单号</param>
- /// <param name="level">出库等级 -1 表示取消订单</param>
- /// <param name="dateTime">时间</param>
- /// <returns></returns>
- public static string UpdateOrderLevel(string order,float level,string dateTime)
- {
- string url = ip + "/api/ICetr/UpdateOrderLevel";
- Hashtable ht = new Hashtable();
- ht.Add("order", order);
- ht.Add("level", level);
- ht.Add("datetime", dateTime);
- string result = "";
- try
- {
- result = JsonClient.Get(url, ht);
- //Logger.Debug("包装_乾润接口请求成功:" + url + "?" + JsonClient.ParaToString(ht));
- JObject json = JObject.Parse(result);
- ApiLog.WriteApiLog(
- "包装_乾润_出库单更新", url + "?" + JsonClient.ParaToString(ht),
- Convert.ToBoolean(json["Success"]), result, 31032);
- return formatResult(result);
- }
- catch
- {
- result = "包装_乾润接口请求失败!";
- //Logger.Debug("包装_乾润接口请求失败:" + url + "?" + JsonClient.ParaToString(ht));
- ApiLog.WriteApiLog(
- "包装_乾润_出库单更新", url + "?" + JsonClient.ParaToString(ht),
- false, result, 31032);
- return new JsonResult() { success = false, status = JsonStatus.error, message = result }.ToJson();
- }
- }
- /// <summary>
- /// apiid = 31042
- /// 4出库单状态查询数据接口,订单号为空查询所有订单状态
- /// </summary>
- /// <param name="order"></param>
- /// <returns></returns>
- public static string GetOutStorageOrderStatus(string order = "",string status="")
- {
- string url = ip + "/api/ICetr/GetOutStorageOrderStatus";
- Hashtable ht = new Hashtable();
- ht.Add("order", order);
- ht.Add("status", status);
- string result = "";
- try
- {
- result = JsonClient.Get(url, ht);
- //Logger.Debug("包装_乾润接口请求失败:" + url + "?" + JsonClient.ParaToString(ht));
- JObject json = JObject.Parse(result);
- ApiLog.WriteApiLog(
- "包装_乾润_出库单查询!", url + "?" + JsonClient.ParaToString(ht),
- Convert.ToBoolean(json["Success"]), "请求结果太长,不保存结果值!", 31042);
- return formatResult(result);
- }
- catch
- {
- result = "包装_乾润_出库单请求失败!";
- //Logger.Debug("包装_乾润接口请求失败:" + url + "?" + JsonClient.ParaToString(ht));
- ApiLog.WriteApiLog(
- "包装_乾润_出库单查询", url + "?" + JsonClient.ParaToString(ht),
- false, result, 31042);
- return new JsonResult() { success = false, status = JsonStatus.error, message = "包装_乾润接口请求失败!" }.ToJson();
- }
- }
- /// <summary>
- /// apiid = 31052
- /// 5设置产品复检标记(仅限釉坯库入工序)
- /// </summary>
- /// <param name="barCodes">产品条码,多个条码用,分隔</param>
- /// <returns></returns>
- public static string SetGoodsReCheckFlag(string barCodes)
- {
- string url = ip + "/api/ICetr/SetGoodsReCheckFlag";
- Hashtable ht = new Hashtable();
- ht.Add("barcodes", barCodes);
- string result = "";
- try
- {
- result = JsonClient.Get(url, ht);
- //Logger.Debug("包装_乾润接口请求失败:" + url + "?" + JsonClient.ParaToString(ht));
- JObject json = JObject.Parse(result);
- ApiLog.WriteApiLog(
- "包装_乾润_复检标记", url + "?" + JsonClient.ParaToString(ht),
- Convert.ToBoolean(json["Success"]), result, 31052);
- return formatResult(result);
- }
- catch
- {
- result = "包装_乾润接口请求失败!";
- //Logger.Debug("包装_乾润接口请求失败:" + url + "?" + JsonClient.ParaToString(ht));
- ApiLog.WriteApiLog(
- "包装_乾润_复检标记", url + "?" + JsonClient.ParaToString(ht),
- false, result, 31052);
- return new JsonResult() { success = false, status = JsonStatus.error, message = result }.ToJson();
- }
- }
- /// <summary>
- /// apiid = 31062
- /// 6获取库存数量和位置(队列中的出库单没有减去,不可用于出库选择)
- /// </summary>
- /// <returns></returns>
- public static string GetStorageStatus(int isfull=0)
- {
- string url = ip + "/api/ICetr/GetStorageStatus";
- Hashtable ht = new Hashtable();
- ht.Add("isfull", isfull);
- string result = "";
- try
- {
- result = JsonClient.Get(url, ht);
- //Logger.Debug("包装_乾润接口请求失败:" + url + "?" + JsonClient.ParaToString(ht));
- JObject json = JObject.Parse(result);
- ApiLog.WriteApiLog(
- "包装_乾润_库存位置查询", url + "?" + JsonClient.ParaToString(ht),
- Convert.ToBoolean(json["Success"]), "请求结果太长,不保存结果值!", 31062);
- return formatResult(result);
- }
- catch
- {
- result = "包装_乾润接口请求失败!";
- //Logger.Debug("包装_乾润接口请求失败:" + url + "?" + JsonClient.ParaToString(ht));
- ApiLog.WriteApiLog(
- "包装_乾润_库存位置查询", url + "?" + JsonClient.ParaToString(ht),
- false, result, 31062);
- return new JsonResult() { success = false, status = JsonStatus.error, message = result }.ToJson();
- }
- }
- public static string formatResult(string result)
- {
- string jsonStr = result;
- jsonStr = jsonStr.Replace("\"Success\"", "\"success\"");
- jsonStr = jsonStr.Replace("\"Status\"", "\"status\"");
- jsonStr = jsonStr.Replace("\"Lists\"", "\"rows\"");
- jsonStr = jsonStr.Replace("\"List\"", "\"rows\"");
- jsonStr = jsonStr.Replace("\"Message\"", "\"message\"");
- return jsonStr;
- }
- }
|