| | |
| | | using System.Text; |
| | | using System.Threading.Tasks; |
| | | using Autofac.Core; |
| | | using Newtonsoft.Json; |
| | | using Quartz; |
| | | using WIDESEA_Common.FillingEnum; |
| | | using WIDESEA_DTO.Basic; |
| | | using WIDESEA_Model.Models.Basic; |
| | | using WIDESEAWCS_Core.BaseRepository; |
| | | using WIDESEAWCS_Core.Helper; |
| | | using WIDESEAWCS_Core.LogHelper; |
| | | using WIDESEAWCS_DTO.MES; |
| | | using WIDESEAWCS_QuartzJob; |
| | | |
| | | namespace WIDESEAWCS_Tasks |
| | |
| | | [DisallowConcurrentExecution] |
| | | public class UpstreamJob : JobBase, IJob |
| | | { |
| | | |
| | | private readonly IRepository<Dt_FillingOrder_Hty> _FillingHtyRepository; |
| | | |
| | | //mesæ ¡éªç |
| | | private static string mesVerification = ""; |
| | | //ç§ |
| | | private static int shijian = 0; |
| | | |
| | | public UpstreamJob(IRepository<Dt_FillingOrder_Hty> fillingHtyRepository) |
| | | { |
| | | _FillingHtyRepository = fillingHtyRepository; |
| | | } |
| | | |
| | | public Task Execute(IJobExecutionContext context) |
| | | { |
| | | try |
| | | { |
| | | //WMSçæä»»å¡ |
| | | string address = AppSettings.Get("WMSApiAddress"); |
| | | if (!string.IsNullOrEmpty(address)) |
| | | //ä¸å¤©è·å䏿¬¡æ ¡éªç |
| | | Thread.Sleep(1000); |
| | | shijian = shijian -1; |
| | | string mes = AppSettings.Get("MSE"); |
| | | if (!string.IsNullOrEmpty(mes)) |
| | | { |
| | | //string k = HttpHelper.Post($"{address}/api/Task/addInTask/?location={1}", ""); |
| | | Reports reports = new Reports(); |
| | | //è·åMESæ ¡éªç |
| | | if (shijian <= 0) |
| | | { |
| | | User user = new User(); |
| | | Return s = JsonConvert.DeserializeObject<Return>(HttpHelper.Post($"{mes}/Account/Check/", user.Serialize())); |
| | | if (s.code.Equals("200")) |
| | | { |
| | | mesVerification = s.message; |
| | | shijian = 86400; |
| | | LogLock.OutLogAOP("䏿¸¸ç³»ç»æ¥å¿", new string[] { "䏿¸¸ç³»ç»", $"{"è·åmesæ ¡éªç æå" + s.message}" }); |
| | | } |
| | | else |
| | | { |
| | | LogLock.OutLogAOP("䏿¸¸ç³»ç»æ¥å¿", new string[] { "䏿¸¸ç³»ç»", $"{"è·åmesæ ¡éªç 失败" + JsonConvert.SerializeObject(s)}" }); |
| | | } |
| | | } |
| | | |
| | | //æ¥è¯¢äºç»´ç |
| | | Dt_FillingOrder_Hty FillingOrder = _FillingHtyRepository.QueryFirst(x => x.BarStatus == (int)FillingStatusEnum.ExecuteCompleted); |
| | | if (FillingOrder != null && !mesVerification.Equals("")) |
| | | { |
| | | reports.report.Qty = FillingOrder.BarNum; |
| | | reports.report.DispatchID = FillingOrder.WorkID + ""; |
| | | reports.barcodeSN.Add(new barcodeSN()); |
| | | reports.barcodeSN[0].Barcode = FillingOrder.BarCode; |
| | | reports.barcodeSN[0].BatchNum = int.Parse(FillingOrder.batchNum); |
| | | reports.barcodeSN[0].Id = FillingOrder.BarCodeID; |
| | | reports.barcodeSN[0].MaterialId = FillingOrder.ArticleNumID; |
| | | reports.barcodeSN[0].Quantity = (int)FillingOrder.BarNum; |
| | | reports.barcodeSN[0].DispatchId = FillingOrder.WorkID; |
| | | reports.barcodeSN[0].BarcodeType = 0; |
| | | |
| | | var headers = new Dictionary<string, string>(); |
| | | headers.Add("token", mesVerification); |
| | | Return k = JsonConvert.DeserializeObject<Return>(HttpHelper.Post($"{mes}/Task/SaveReportRaw/", reports.Serialize(), "application/json", headers)); |
| | | |
| | | string zhi = JsonConvert.SerializeObject(reports); |
| | | LogLock.OutLogAOP("䏿¸¸ç³»ç»æ¥å¿", new string[] { "䏿¸¸ç³»ç»", $"{"åéäºç»´ç ï¼" + zhi + "//"}" }); |
| | | |
| | | //ä¿®æ¹ç¶æ |
| | | if (k.code.Equals("200")) |
| | | { |
| | | FillingOrder.BarStatus = (int)FillingStatusEnum.Send; |
| | | _FillingHtyRepository.UpdateData(FillingOrder); |
| | | LogLock.OutLogAOP("䏿¸¸ç³»ç»æ¥å¿", new string[] { "䏿¸¸ç³»ç»", $"{"ä¿®æ¹äºç»´ç IDï¼" + FillingOrder.Id + "//"}" }); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | //LogLock.OutLogAOP("䏿¸¸ç³»ç»æ¥å¿", new string[] { "䏿¸¸ç³»ç»", $"{"没æå¯ä¸æ¥çäºç»´ç ææ æ ¡éªç "}" }); |
| | | } |
| | | } |
| | | |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | //åå
¥æ¥å¿ |
| | | WriteInfo( "䏿¸¸ç³»ç»", $"{ex.Message}"); |
| | | LogLock.OutLogAOP("䏿¸¸ç³»ç»æ¥å¿", new string[] { "䏿¸¸ç³»ç»", $"{ex.Message}" }); |
| | | } |
| | | |
| | | return Task.CompletedTask; |