diff --git a/Job_DSWMS_REPORT/Job_DSWMS_REPORT.csproj b/Job_DSWMS_REPORT/Job_DSWMS_REPORT.csproj
index 1c7e28d7..d839fd6d 100644
--- a/Job_DSWMS_REPORT/Job_DSWMS_REPORT.csproj
+++ b/Job_DSWMS_REPORT/Job_DSWMS_REPORT.csproj
@@ -73,8 +73,8 @@
..\packages\MimeKit.2.9.2\lib\net45\MimeKit.dll
-
- ..\packages\Newtonsoft.Json.12.0.2\lib\net40\Newtonsoft.Json.dll
+
+ ..\packages\Newtonsoft.Json.13.0.3\lib\net45\Newtonsoft.Json.dll
..\packages\Quartz.2.6.2\lib\net40\Quartz.dll
diff --git a/Job_DSWMS_REPORT/Job_DSWMS_REPORT_1.cs b/Job_DSWMS_REPORT/Job_DSWMS_REPORT_1.cs
index 92c54ebd..2559dbd3 100644
--- a/Job_DSWMS_REPORT/Job_DSWMS_REPORT_1.cs
+++ b/Job_DSWMS_REPORT/Job_DSWMS_REPORT_1.cs
@@ -208,4 +208,214 @@ namespace Job_DSWMS_REPORT
}
+ ///
+ /// 新仓储系统 分类监管 报文上传
+ ///
+ public class Job_DSWMS_SaveDailyAmount : IJob
+ {
+ private ILog log = LogManager.GetLogger(typeof(Job_DSWMS_SaveDailyAmount));
+
+ private string USERCODE = "";
+ private string PWD = "";
+ private string SERVERUrl = "";
+ private string SERVERPORTUrl = "";
+ private string SERVERPORTUrl2 = "";
+ private string FilePath = "";
+
+ public void Execute(IJobExecutionContext context)
+ {
+ log.Debug($"Execute开始");
+
+ USERCODE = context.JobDetail.JobDataMap.GetString("USERCODE");
+
+ PWD = context.JobDetail.JobDataMap.GetString("PWD");
+
+ SERVERUrl = context.JobDetail.JobDataMap.GetString("SERVERUrl");
+
+ //SERVERPORTUrl = context.JobDetail.JobDataMap.GetString("SERVERPORTUrl");
+
+ SERVERPORTUrl2 = context.JobDetail.JobDataMap.GetString("SERVERPORTUrl2");
+
+ //1:调用URL指定的接口 得到返回数据 取得其中的文件名
+
+ //2:从URL+文件名中取得文件,保存至指定文件夹
+
+ try
+ {
+ var _data = SetDo();
+
+ //DownLoad(filename);
+ }
+ catch (Exception ex)
+ {
+ log.Error("错误中断0:" + ex.Message);
+ }
+
+ }
+
+ public class WMSXMLResult
+ {
+ bool status { get; set; }
+ string code { get; set; }
+ public string data { get; set; }
+
+ }
+
+ private string getFileName()
+ {
+ string strBuff = "";
+
+ var url = SERVERPORTUrl + "?USERCODE=" + USERCODE + "&PWD=" + PWD;
+
+ var rtn = DoGet(url);
+
+ //"{\"status\":true,\"code\":null,\"message\":\"\",\"data\":\"Upload/FLJG/2021_07_06_YLDY_StockApply.FLJGRX\"}"
+
+ var jsonObj = JsonConvert.DeserializeObject(rtn);
+
+ return jsonObj.data;
+ }
+
+ public static string DoPost(string url, string json, int timeout = 10000)
+ {
+ try
+ {
+ string responseString = "";//post返回的结果
+ ServicePointManager.ServerCertificateValidationCallback += (sender, cert, chain, err) => { return true; };
+ ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls;
+ HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create(url);
+ req.Method = "POST";
+ req.Timeout = timeout;
+ req.Headers.Add("Accept-Encoding", "gzip, deflate");
+
+ if (!string.IsNullOrWhiteSpace(json))
+ {
+ byte[] postBytes = Encoding.UTF8.GetBytes(json);
+ req.ContentType = "application/json; charset=utf-8";
+ req.ContentLength = Encoding.UTF8.GetByteCount(json);
+ Stream stream = req.GetRequestStream();
+ stream.Write(postBytes, 0, postBytes.Length);
+ stream.Close();
+ }
+ else
+ {
+ req.ContentLength = 0;
+ }
+ var response = req.GetResponse();
+ responseString = GetResponseBody((HttpWebResponse)response);
+ return responseString;
+ }
+ catch (Exception e)
+ {
+ return e.Message;
+ }
+ }
+ public static string DoGet(string url)
+ {
+ string responseString = "";//post返回的结果
+ ServicePointManager.ServerCertificateValidationCallback += (sender, cert, chain, err) => { return true; };
+ ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls;
+ HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create(url);
+ req.Method = "GET";
+ req.ContentLength = 0;
+
+ var response = req.GetResponse();
+ Stream streamResponse = response.GetResponseStream();
+ StreamReader streamRead = new StreamReader(streamResponse);
+ responseString = streamRead.ReadToEnd();
+ response.Close();
+ streamRead.Close();
+
+ return responseString;
+ }
+ public string DownLoad(string FileName)
+ {
+ var url = SERVERUrl + FileName;
+
+ var fr = FileName.Split('/').ToList();
+
+ var fileSaveName = fr[fr.Count - 1];
+
+ HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
+ request.Method = "GET";
+ byte[] fileBytes;
+ using (WebResponse webRes = request.GetResponse())
+ {
+ int length = (int)webRes.ContentLength;
+ HttpWebResponse response = webRes as HttpWebResponse;
+ Stream stream = response.GetResponseStream();
+ var contentdisposition = response.Headers["Content-Disposition"];
+ var filename = fileSaveName;
+ //读取到内存
+ MemoryStream stmMemory = new MemoryStream();
+ byte[] buffer = new byte[length];
+ int i;
+ //将字节逐个放入到Byte中
+ while ((i = stream.Read(buffer, 0, buffer.Length)) > 0)
+ {
+ stmMemory.Write(buffer, 0, i);
+ }
+ fileBytes = stmMemory.ToArray();//文件流Byte
+ FileStream fs = new FileStream(FilePath + "\\" + filename, FileMode.OpenOrCreate);
+ stmMemory.WriteTo(fs);
+ stmMemory.Close();
+ fs.Close();
+ return FilePath + filename;
+ }
+ }
+
+ private string SetDo()
+ {
+ string strBuff = "";
+
+ var url = SERVERPORTUrl2 + "?USERCODE=" + USERCODE + "&PWD=" + PWD;
+
+ var rtn = DoGet(url);
+
+ //"{\"status\":true,\"code\":null,\"message\":\"\",\"data\":\"Upload/FLJG/2021_07_06_YLDY_StockApply.FLJGRX\"}"
+
+ var jsonObj = JsonConvert.DeserializeObject(rtn);
+
+ return jsonObj.data;
+ }
+
+ private static string GetResponseBody(HttpWebResponse response)
+ {
+ string responseBody = string.Empty;
+ if (response.ContentEncoding != null && response.ContentEncoding.ToLower().Contains("gzip"))
+ {
+ using (GZipStream stream = new GZipStream(response.GetResponseStream(), CompressionMode.Decompress))
+ {
+ using (StreamReader reader = new StreamReader(stream))
+ {
+ responseBody = reader.ReadToEnd();
+ }
+ }
+ }
+ else if (response.ContentEncoding != null && response.ContentEncoding.ToLower().Contains("deflate"))
+ {
+ using (DeflateStream stream = new DeflateStream(
+ response.GetResponseStream(), CompressionMode.Decompress))
+ {
+ using (StreamReader reader =
+ new StreamReader(stream, Encoding.UTF8))
+ {
+ responseBody = reader.ReadToEnd();
+ }
+ }
+ }
+ else
+ {
+ using (Stream stream = response.GetResponseStream())
+ {
+ using (StreamReader reader = new StreamReader(stream, Encoding.UTF8))
+ {
+ responseBody = reader.ReadToEnd();
+ }
+ }
+ }
+ return responseBody;
+ }
+
+ }
}