| | |
| | | using Newtonsoft.Json; |
| | | using LikuServiceReference; |
| | | using Newtonsoft.Json; |
| | | using OfficeOpenXml.FormulaParsing.Excel.Functions.DateTime; |
| | | using OfficeOpenXml.FormulaParsing.Excel.Functions.Information; |
| | | using Org.BouncyCastle.Tls; |
| | | using StackExchange.Profiling.Internal; |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.ComponentModel; |
| | | using System.Linq; |
| | | using System.Linq.Expressions; |
| | | using System.Net.NetworkInformation; |
| | | using System.Reflection; |
| | | using System.Text; |
| | | using System.Threading.Tasks; |
| | |
| | | using WIDESEA_Core.Helper; |
| | | using WIDESEA_Core.Log; |
| | | using WIDESEA_DTO.System; |
| | | using WIDESEA_IBasicRepository; |
| | | using WIDESEA_ISystemRepository; |
| | | using WIDESEA_ISystemService; |
| | | using WIDESEA_Model; |
| | | using WIDESEA_Model.Models; |
| | | using WIDESEA_SystemService.Scheduler; |
| | | using WIDESEA_Model.Models.System.Reponse; |
| | | using WIDESEA_Model.Models.System.Request; |
| | | using static System.Collections.Specialized.BitVector32; |
| | | |
| | | namespace WIDESEA_SystemService |
| | | { |
| | |
| | | { |
| | | private readonly IUnitOfWorkManage _unitOfWorkManage; |
| | | private readonly ICacheService _cacheService; |
| | | SchedulerCenter scheduler = new SchedulerCenter(); |
| | | private readonly ILabelMasterRepository _labelMasterRepository; |
| | | private readonly IOutBoundOrderBYDRepository _outBoundOrderBYDRepository; |
| | | private readonly IOutboundOrderDetailBYDRepository _outboundOrderDetailByDRepository; |
| | | private readonly IOutboundOrderDetail_LabelsBYDRepository _outboundOrderDetailLabelsByDRepository; |
| | | |
| | | public Sys_JobService(ISys_JobRepository BaseDal, IUnitOfWorkManage unitOfWorkManage, ICacheService cacheService) : base(BaseDal) |
| | | |
| | | public Sys_JobService(ISys_JobRepository BaseDal, IUnitOfWorkManage unitOfWorkManage, ICacheService cacheService,ILabelMasterRepository labelMasterRepository, IOutBoundOrderBYDRepository outBoundOrderBYDRepository, IOutboundOrderDetailBYDRepository outboundOrderDetailByDRepository, IOutboundOrderDetail_LabelsBYDRepository outboundOrderDetailLabelsByDRepository) : base(BaseDal) |
| | | { |
| | | _unitOfWorkManage = unitOfWorkManage; |
| | | _cacheService = cacheService; |
| | | _labelMasterRepository = labelMasterRepository; |
| | | _outBoundOrderBYDRepository = outBoundOrderBYDRepository; |
| | | _outboundOrderDetailByDRepository = outboundOrderDetailByDRepository; |
| | | _outboundOrderDetailLabelsByDRepository = outboundOrderDetailLabelsByDRepository; |
| | | } |
| | | |
| | | |
| | | public WebResponseContent StartServe() |
| | | /// <summary> |
| | | /// 忥æ¡ç ä¸»æ°æ® |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | public WebResponseContent SyncLabMaster() |
| | | { |
| | | WebResponseContent webResponse = new WebResponseContent(); |
| | | WebResponseContent content = new WebResponseContent(); |
| | | try |
| | | { |
| | | if (!scheduler.IsRun()) |
| | | LabelServiceReference.LabelWebServiceClient lableClient = new LabelServiceReference.LabelWebServiceClient(); |
| | | getLabelMasterRequest lab = new getLabelMasterRequest(); |
| | | lab.WERKS = AppSettings.Configuration["WERKS"]; |
| | | lab.SYSNO = AppSettings.Configuration["SYSNO"]; |
| | | lab.BATCH = ""; |
| | | lab.LABEL_NO = ""; |
| | | string inparam = "[" + JsonConvert.SerializeObject(lab) + "]"; |
| | | //string response = lableClient.getLabelMaster(inparam); |
| | | string response = "{\r\n \"msg\": \"ä¼ è¾æåï¼\",\r\n \"data\": [\r\n {\r\n \"WH_NUMBER\": \"GX25\",\r\n \"WERKS\": \"GX25\",\r\n \"PSTYP\": \"0\",\r\n \"PO_NO\": \"5907427563\",\r\n \"PRODUCT_DATE\": \"2024-12-16\",\r\n \"EFFECT_DATE\": \"2025-06-17\",\r\n \"LABEL_NO\": \"XAGX25001020914\",\r\n \"EDIT_DATE\": \"2024-12-16 15:11:27\",\r\n \"BATCH\": \"2412160004\",\r\n \"BSART\": \"QH00\",\r\n \"RECEIPT_NO\": \"XASHGX25001000923\",\r\n \"RECEIPT_ITEM_NO\": \"1\",\r\n \"MATNR\": \"12825222-00\",\r\n \"LABEL_LEVEL\": \"1\",\r\n \"MAKTX\": \"è¶è¢_1000Ã110Ã0.02mm_HDPE_çè¾¹å¼å£_éæ_é²éçµ_æ å°å·\",\r\n \"LIKTX\": \"æ·±å³å¸é¾å
±å®ä¸æéå
¬å¸\",\r\n \"UNIT\": \"PCS\",\r\n \"SOBKZ\": \"Z\",\r\n \"LABEL_STATUS\": \"01\",\r\n \"QC_PEOPLE\": \"\",\r\n \"BOX_QTY\": 10,\r\n \"INSPECTION_ITEM_NO\": \"1\",\r\n \"CREATE_DATE\": \"2024-12-16 15:10:16\",\r\n \"QC_DATE\": \"\",\r\n \"RECEIPT_DATE\": \"2024-12-16 15:11:27\",\r\n \"LIFNR\": \"106247\",\r\n \"PO_ITEM_NO\": \"00010\",\r\n \"INSPECTION_NO\": \"XASJGX25001000720\"\r\n },\r\n {\r\n \"WH_NUMBER\": \"GX25\",\r\n \"WERKS\": \"GX25\",\r\n \"PSTYP\": \"0\",\r\n \"PO_NO\": \"5907427563\",\r\n \"PRODUCT_DATE\": \"2024-12-16\",\r\n \"EFFECT_DATE\": \"2025-06-17\",\r\n \"LABEL_NO\": \"XAGX25001020913\",\r\n \"EDIT_DATE\": \"2024-12-16 15:11:27\",\r\n \"BATCH\": \"2412160004\",\r\n \"BSART\": \"QH00\",\r\n \"RECEIPT_NO\": \"XASHGX25001000923\",\r\n \"RECEIPT_ITEM_NO\": \"1\",\r\n \"MATNR\": \"12825222-00\",\r\n \"LABEL_LEVEL\": \"1\",\r\n \"MAKTX\": \"è¶è¢_1000Ã110Ã0.02mm_HDPE_çè¾¹å¼å£_éæ_é²éçµ_æ å°å·\",\r\n \"LIKTX\": \"æ·±å³å¸é¾å
±å®ä¸æéå
¬å¸\",\r\n \"UNIT\": \"PCS\",\r\n \"SOBKZ\": \"Z\",\r\n \"LABEL_STATUS\": \"01\",\r\n \"QC_PEOPLE\": \"\",\r\n \"BOX_QTY\": 10,\r\n \"INSPECTION_ITEM_NO\": \"1\",\r\n \"CREATE_DATE\": \"2024-12-16 15:10:16\",\r\n \"QC_DATE\": \"\",\r\n \"RECEIPT_DATE\": \"2024-12-16 15:11:27\",\r\n \"LIFNR\": \"106247\",\r\n \"PO_ITEM_NO\": \"00010\",\r\n \"INSPECTION_NO\": \"XASJGX25001000720\"\r\n },\r\n {\r\n \"WH_NUMBER\": \"GX25\",\r\n \"WERKS\": \"GX25\",\r\n \"PSTYP\": \"0\",\r\n \"PO_NO\": \"5907427563\",\r\n \"PRODUCT_DATE\": \"2024-12-16\",\r\n \"EFFECT_DATE\": \"2025-06-17\",\r\n \"LABEL_NO\": \"XAGX25001020912\",\r\n \"EDIT_DATE\": \"2024-12-16 15:11:27\",\r\n \"BATCH\": \"2412160004\",\r\n \"BSART\": \"QH00\",\r\n \"RECEIPT_NO\": \"XASHGX25001000923\",\r\n \"RECEIPT_ITEM_NO\": \"1\",\r\n \"MATNR\": \"12825222-00\",\r\n \"LABEL_LEVEL\": \"1\",\r\n \"MAKTX\": \"è¶è¢_1000Ã110Ã0.02mm_HDPE_çè¾¹å¼å£_éæ_é²éçµ_æ å°å·\",\r\n \"LIKTX\": \"æ·±å³å¸é¾å
±å®ä¸æéå
¬å¸\",\r\n \"UNIT\": \"PCS\",\r\n \"SOBKZ\": \"Z\",\r\n \"LABEL_STATUS\": \"01\",\r\n \"QC_PEOPLE\": \"\",\r\n \"BOX_QTY\": 10,\r\n \"INSPECTION_ITEM_NO\": \"1\",\r\n \"CREATE_DATE\": \"2024-12-16 15:10:16\",\r\n \"QC_DATE\": \"\",\r\n \"RECEIPT_DATE\": \"2024-12-16 15:11:27\",\r\n \"LIFNR\": \"106247\",\r\n \"PO_ITEM_NO\": \"00010\",\r\n \"INSPECTION_NO\": \"XASJGX25001000720\"\r\n },\r\n {\r\n \"WH_NUMBER\": \"GX25\",\r\n \"WERKS\": \"GX25\",\r\n \"PSTYP\": \"0\",\r\n \"PO_NO\": \"5907427563\",\r\n \"PRODUCT_DATE\": \"2024-12-16\",\r\n \"EFFECT_DATE\": \"2025-06-17\",\r\n \"LABEL_NO\": \"XAGX25001020911\",\r\n \"EDIT_DATE\": \"2024-12-16 15:11:27\",\r\n \"BATCH\": \"2412160004\",\r\n \"BSART\": \"QH00\",\r\n \"RECEIPT_NO\": \"XASHGX25001000923\",\r\n \"RECEIPT_ITEM_NO\": \"1\",\r\n \"MATNR\": \"12825222-00\",\r\n \"LABEL_LEVEL\": \"1\",\r\n \"MAKTX\": \"è¶è¢_1000Ã110Ã0.02mm_HDPE_çè¾¹å¼å£_éæ_é²éçµ_æ å°å·\",\r\n \"LIKTX\": \"æ·±å³å¸é¾å
±å®ä¸æéå
¬å¸\",\r\n \"UNIT\": \"PCS\",\r\n \"SOBKZ\": \"Z\",\r\n \"LABEL_STATUS\": \"01\",\r\n \"QC_PEOPLE\": \"\",\r\n \"BOX_QTY\": 10,\r\n \"INSPECTION_ITEM_NO\": \"1\",\r\n \"CREATE_DATE\": \"2024-12-16 15:10:16\",\r\n \"QC_DATE\": \"\",\r\n \"RECEIPT_DATE\": \"2024-12-16 15:11:27\",\r\n \"LIFNR\": \"106247\",\r\n \"PO_ITEM_NO\": \"00010\",\r\n \"INSPECTION_NO\": \"XASJGX25001000720\"\r\n },\r\n {\r\n \"WH_NUMBER\": \"GX25\",\r\n \"WERKS\": \"GX25\",\r\n \"PSTYP\": \"0\",\r\n \"PO_NO\": \"5907427563\",\r\n \"PRODUCT_DATE\": \"2024-12-16\",\r\n \"EFFECT_DATE\": \"2025-06-17\",\r\n \"LABEL_NO\": \"XAGX25001020910\",\r\n \"EDIT_DATE\": \"2024-12-16 15:11:27\",\r\n \"BATCH\": \"2412160004\",\r\n \"BSART\": \"QH00\",\r\n \"RECEIPT_NO\": \"XASHGX25001000923\",\r\n \"RECEIPT_ITEM_NO\": \"1\",\r\n \"MATNR\": \"12825222-00\",\r\n \"LABEL_LEVEL\": \"1\",\r\n \"MAKTX\": \"è¶è¢_1000Ã110Ã0.02mm_HDPE_çè¾¹å¼å£_éæ_é²éçµ_æ å°å·\",\r\n \"LIKTX\": \"æ·±å³å¸é¾å
±å®ä¸æéå
¬å¸\",\r\n \"UNIT\": \"PCS\",\r\n \"SOBKZ\": \"Z\",\r\n \"LABEL_STATUS\": \"01\",\r\n \"QC_PEOPLE\": \"\",\r\n \"BOX_QTY\": 10,\r\n \"INSPECTION_ITEM_NO\": \"1\",\r\n \"CREATE_DATE\": \"2024-12-16 15:10:16\",\r\n \"QC_DATE\": \"\",\r\n \"RECEIPT_DATE\": \"2024-12-16 15:11:27\",\r\n \"LIFNR\": \"106247\",\r\n \"PO_ITEM_NO\": \"00010\",\r\n \"INSPECTION_NO\": \"XASJGX25001000720\"\r\n },\r\n {\r\n \"WH_NUMBER\": \"GX25\",\r\n \"WERKS\": \"GX25\",\r\n \"PSTYP\": \"0\",\r\n \"PO_NO\": \"5907427563\",\r\n \"PRODUCT_DATE\": \"2024-12-16\",\r\n \"EFFECT_DATE\": \"2025-06-17\",\r\n \"LABEL_NO\": \"XAGX25001020909\",\r\n \"EDIT_DATE\": \"2024-12-16 15:11:27\",\r\n \"BATCH\": \"2412160004\",\r\n \"BSART\": \"QH00\",\r\n \"RECEIPT_NO\": \"XASHGX25001000923\",\r\n \"RECEIPT_ITEM_NO\": \"1\",\r\n \"MATNR\": \"12825222-00\",\r\n \"LABEL_LEVEL\": \"1\",\r\n \"MAKTX\": \"è¶è¢_1000Ã110Ã0.02mm_HDPE_çè¾¹å¼å£_éæ_é²éçµ_æ å°å·\",\r\n \"LIKTX\": \"æ·±å³å¸é¾å
±å®ä¸æéå
¬å¸\",\r\n \"UNIT\": \"PCS\",\r\n \"SOBKZ\": \"Z\",\r\n \"LABEL_STATUS\": \"01\",\r\n \"QC_PEOPLE\": \"\",\r\n \"BOX_QTY\": 10,\r\n \"INSPECTION_ITEM_NO\": \"1\",\r\n \"CREATE_DATE\": \"2024-12-16 15:10:16\",\r\n \"QC_DATE\": \"\",\r\n \"RECEIPT_DATE\": \"2024-12-16 15:11:27\",\r\n \"LIFNR\": \"106247\",\r\n \"PO_ITEM_NO\": \"00010\",\r\n \"INSPECTION_NO\": \"XASJGX25001000720\"\r\n },\r\n {\r\n \"WH_NUMBER\": \"GX25\",\r\n \"WERKS\": \"GX25\",\r\n \"PSTYP\": \"0\",\r\n \"PO_NO\": \"5907427563\",\r\n \"PRODUCT_DATE\": \"2024-12-16\",\r\n \"EFFECT_DATE\": \"2025-06-17\",\r\n \"LABEL_NO\": \"XAGX25001020908\",\r\n \"EDIT_DATE\": \"2024-12-16 15:11:27\",\r\n \"BATCH\": \"2412160004\",\r\n \"BSART\": \"QH00\",\r\n \"RECEIPT_NO\": \"XASHGX25001000923\",\r\n \"RECEIPT_ITEM_NO\": \"1\",\r\n \"MATNR\": \"12825222-00\",\r\n \"LABEL_LEVEL\": \"1\",\r\n \"MAKTX\": \"è¶è¢_1000Ã110Ã0.02mm_HDPE_çè¾¹å¼å£_éæ_é²éçµ_æ å°å·\",\r\n \"LIKTX\": \"æ·±å³å¸é¾å
±å®ä¸æéå
¬å¸\",\r\n \"UNIT\": \"PCS\",\r\n \"SOBKZ\": \"Z\",\r\n \"LABEL_STATUS\": \"01\",\r\n \"QC_PEOPLE\": \"\",\r\n \"BOX_QTY\": 10,\r\n \"INSPECTION_ITEM_NO\": \"1\",\r\n \"CREATE_DATE\": \"2024-12-16 15:10:16\",\r\n \"QC_DATE\": \"\",\r\n \"RECEIPT_DATE\": \"2024-12-16 15:11:27\",\r\n \"LIFNR\": \"106247\",\r\n \"PO_ITEM_NO\": \"00010\",\r\n \"INSPECTION_NO\": \"XASJGX25001000720\"\r\n },\r\n {\r\n \"WH_NUMBER\": \"GX25\",\r\n \"WERKS\": \"GX25\",\r\n \"PSTYP\": \"0\",\r\n \"PO_NO\": \"5907427563\",\r\n \"PRODUCT_DATE\": \"2024-12-16\",\r\n \"EFFECT_DATE\": \"2025-06-17\",\r\n \"LABEL_NO\": \"XAGX25001020907\",\r\n \"EDIT_DATE\": \"2024-12-16 15:11:27\",\r\n \"BATCH\": \"2412160004\",\r\n \"BSART\": \"QH00\",\r\n \"RECEIPT_NO\": \"XASHGX25001000923\",\r\n \"RECEIPT_ITEM_NO\": \"1\",\r\n \"MATNR\": \"12825222-00\",\r\n \"LABEL_LEVEL\": \"1\",\r\n \"MAKTX\": \"è¶è¢_1000Ã110Ã0.02mm_HDPE_çè¾¹å¼å£_éæ_é²éçµ_æ å°å·\",\r\n \"LIKTX\": \"æ·±å³å¸é¾å
±å®ä¸æéå
¬å¸\",\r\n \"UNIT\": \"PCS\",\r\n \"SOBKZ\": \"Z\",\r\n \"LABEL_STATUS\": \"01\",\r\n \"QC_PEOPLE\": \"\",\r\n \"BOX_QTY\": 10,\r\n \"INSPECTION_ITEM_NO\": \"1\",\r\n \"CREATE_DATE\": \"2024-12-16 15:10:16\",\r\n \"QC_DATE\": \"\",\r\n \"RECEIPT_DATE\": \"2024-12-16 15:11:27\",\r\n \"LIFNR\": \"106247\",\r\n \"PO_ITEM_NO\": \"00010\",\r\n \"INSPECTION_NO\": \"XASJGX25001000720\"\r\n },\r\n {\r\n \"WH_NUMBER\": \"GX25\",\r\n \"WERKS\": \"GX25\",\r\n \"PSTYP\": \"0\",\r\n \"PO_NO\": \"5907427563\",\r\n \"PRODUCT_DATE\": \"2024-12-16\",\r\n \"EFFECT_DATE\": \"2025-06-17\",\r\n \"LABEL_NO\": \"XAGX25001020906\",\r\n \"EDIT_DATE\": \"2024-12-16 15:11:27\",\r\n \"BATCH\": \"2412160004\",\r\n \"BSART\": \"QH00\",\r\n \"RECEIPT_NO\": \"XASHGX25001000923\",\r\n \"RECEIPT_ITEM_NO\": \"1\",\r\n \"MATNR\": \"12825222-00\",\r\n \"LABEL_LEVEL\": \"1\",\r\n \"MAKTX\": \"è¶è¢_1000Ã110Ã0.02mm_HDPE_çè¾¹å¼å£_éæ_é²éçµ_æ å°å·\",\r\n \"LIKTX\": \"æ·±å³å¸é¾å
±å®ä¸æéå
¬å¸\",\r\n \"UNIT\": \"PCS\",\r\n \"SOBKZ\": \"Z\",\r\n \"LABEL_STATUS\": \"01\",\r\n \"QC_PEOPLE\": \"\",\r\n \"BOX_QTY\": 10,\r\n \"INSPECTION_ITEM_NO\": \"1\",\r\n \"CREATE_DATE\": \"2024-12-16 15:10:16\",\r\n \"QC_DATE\": \"\",\r\n \"RECEIPT_DATE\": \"2024-12-16 15:11:27\",\r\n \"LIFNR\": \"106247\",\r\n \"PO_ITEM_NO\": \"00010\",\r\n \"INSPECTION_NO\": \"XASJGX25001000720\"\r\n },\r\n {\r\n \"WH_NUMBER\": \"GX25\",\r\n \"WERKS\": \"GX25\",\r\n \"PSTYP\": \"0\",\r\n \"PO_NO\": \"5907427563\",\r\n \"PRODUCT_DATE\": \"2024-12-16\",\r\n \"EFFECT_DATE\": \"2025-06-17\",\r\n \"LABEL_NO\": \"XAGX25001020905\",\r\n \"EDIT_DATE\": \"2024-12-16 15:11:27\",\r\n \"BATCH\": \"2412160004\",\r\n \"BSART\": \"QH00\",\r\n \"RECEIPT_NO\": \"XASHGX25001000923\",\r\n \"RECEIPT_ITEM_NO\": \"1\",\r\n \"MATNR\": \"12825222-00\",\r\n \"LABEL_LEVEL\": \"1\",\r\n \"MAKTX\": \"è¶è¢_1000Ã110Ã0.02mm_HDPE_çè¾¹å¼å£_éæ_é²éçµ_æ å°å·\",\r\n \"LIKTX\": \"æ·±å³å¸é¾å
±å®ä¸æéå
¬å¸\",\r\n \"UNIT\": \"PCS\",\r\n \"SOBKZ\": \"Z\",\r\n \"LABEL_STATUS\": \"01\",\r\n \"QC_PEOPLE\": \"\",\r\n \"BOX_QTY\": 10,\r\n \"INSPECTION_ITEM_NO\": \"1\",\r\n \"CREATE_DATE\": \"2024-12-16 15:10:16\",\r\n \"QC_DATE\": \"\",\r\n \"RECEIPT_DATE\": \"2024-12-16 15:11:27\",\r\n \"LIFNR\": \"106247\",\r\n \"PO_ITEM_NO\": \"00010\",\r\n \"INSPECTION_NO\": \"XASJGX25001000720\"\r\n }\r\n ],\r\n \"success\": true\r\n}"; |
| | | if (response != null) |
| | | { |
| | | var startRes = SrartScheduler(); |
| | | if (startRes.Status) |
| | | getLabelMasterReponse responsetest = JsonConvert.DeserializeObject<getLabelMasterReponse>(response); |
| | | if (responsetest != null && responsetest.data.Count() > 0) |
| | | { |
| | | return webResponse.OK("æå¡å¯å¨æåï¼"); |
| | | foreach (var item in responsetest.data) |
| | | { |
| | | //æ¥è¯¢æ¬å°æ¯å¦åå¨ |
| | | Dt_LabelMaster labMaster = _labelMasterRepository.QueryFirst(x=>x.LABEL_NO == item.LABEL_NO); |
| | | if (labMaster != null)//æ´æ°ç¶æ |
| | | { |
| | | labMaster.LABEL_STATUS = item.LABEL_STATUS; |
| | | _labelMasterRepository.UpdateData(labMaster); |
| | | } |
| | | else |
| | | { |
| | | //è°åº¦å¯å¨å¤±è´¥ï¼å
³éå
¨é¨ |
| | | WriteLog.Write_Log("æå¡", "æå¡", "å¯å¨æå¡\n[è°åº¦å¼å¸¸]" + startRes.Message); |
| | | return startRes; |
| | | _labelMasterRepository.AddData(item); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | return webResponse.Error("请å¿éå¤å¯å¨ï¼"); |
| | | |
| | | content = WebResponseContent.Instance.OK("忥æ¡ç ä¸»æ°æ®æå"); |
| | | } |
| | | } |
| | | |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | WriteLog.Write_Log("æå¡", "æå¡", "å¯å¨æå¡\n[å¼å¸¸]" + ex.Message); |
| | | return webResponse.Error($"å¼å¸¸ï¼{ex.Message}"); |
| | | content = WebResponseContent.Instance.Error(ex.Message); |
| | | } |
| | | return content; |
| | | } |
| | | |
| | | |
| | | /// <summary> |
| | | /// æ ¹æ®æ¡ç è·åæ¡ç å
¥åºä¸»æ°æ® |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | public WebResponseContent GetLabMaster(string barcode) |
| | | { |
| | | WebResponseContent content = new WebResponseContent(); |
| | | try |
| | | { |
| | | LabelServiceReference.LabelWebServiceClient lableClient = new LabelServiceReference.LabelWebServiceClient(); |
| | | getLabelMasterRequest lab = new getLabelMasterRequest(); |
| | | lab.WERKS = AppSettings.Configuration["WERKS"]; |
| | | lab.SYSNO = AppSettings.Configuration["SYSNO"]; |
| | | lab.BATCH = ""; |
| | | lab.LABEL_NO = barcode; |
| | | string inparam = "[" + JsonConvert.SerializeObject(lab) + "]"; |
| | | //string response = lableClient.getLabelMaster(inparam); |
| | | string response = "{\r\n \"msg\": \"ä¼ è¾æåï¼\",\r\n \"data\": [\r\n {\r\n \"WH_NUMBER\": \"GX25\",\r\n \"WERKS\": \"GX25\",\r\n \"PSTYP\": \"0\",\r\n \"PO_NO\": \"5907427563\",\r\n \"PRODUCT_DATE\": \"2024-12-16\",\r\n \"EFFECT_DATE\": \"2025-06-17\",\r\n \"LABEL_NO\": \"XAGX25001020914\",\r\n \"EDIT_DATE\": \"2024-12-16 15:11:27\",\r\n \"BATCH\": \"2412160004\",\r\n \"BSART\": \"QH00\",\r\n \"RECEIPT_NO\": \"XASHGX25001000923\",\r\n \"RECEIPT_ITEM_NO\": \"1\",\r\n \"MATNR\": \"12825222-00\",\r\n \"LABEL_LEVEL\": \"1\",\r\n \"MAKTX\": \"è¶è¢_1000Ã110Ã0.02mm_HDPE_çè¾¹å¼å£_éæ_é²éçµ_æ å°å·\",\r\n \"LIKTX\": \"æ·±å³å¸é¾å
±å®ä¸æéå
¬å¸\",\r\n \"UNIT\": \"PCS\",\r\n \"SOBKZ\": \"Z\",\r\n \"LABEL_STATUS\": \"01\",\r\n \"QC_PEOPLE\": \"\",\r\n \"BOX_QTY\": 10,\r\n \"INSPECTION_ITEM_NO\": \"1\",\r\n \"CREATE_DATE\": \"2024-12-16 15:10:16\",\r\n \"QC_DATE\": \"\",\r\n \"RECEIPT_DATE\": \"2024-12-16 15:11:27\",\r\n \"LIFNR\": \"106247\",\r\n \"PO_ITEM_NO\": \"00010\",\r\n \"INSPECTION_NO\": \"XASJGX25001000720\"\r\n }\r\n ],\r\n \"success\": true\r\n}"; |
| | | if (response != null) |
| | | { |
| | | getLabelMasterReponse responsetest = JsonConvert.DeserializeObject<getLabelMasterReponse>(response); |
| | | if (responsetest != null && responsetest.data.Count() > 0) |
| | | { |
| | | foreach (var item in responsetest.data) |
| | | { |
| | | //æ¥è¯¢æ¬å°æ¯å¦åå¨ |
| | | Dt_LabelMaster labMaster = _labelMasterRepository.QueryFirst(x => x.LABEL_NO == item.LABEL_NO); |
| | | if (labMaster != null)//æ´æ°ç¶æ |
| | | { |
| | | labMaster.LABEL_STATUS = item.LABEL_STATUS; |
| | | _labelMasterRepository.UpdateData(labMaster); |
| | | } |
| | | else |
| | | { |
| | | _labelMasterRepository.AddData(item); |
| | | |
| | | } |
| | | content = WebResponseContent.Instance.OK("è·åæ¡ç ä¸»æ°æ®æå", item); |
| | | } |
| | | |
| | | |
| | | } |
| | | } |
| | | |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | content = WebResponseContent.Instance.Error(ex.Message); |
| | | } |
| | | return content; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 忿䏿¶æ¥å£ï¼å
¥åºåä¼ |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | public WebResponseContent CallPutAway(PutAwayRequest putAway) |
| | | { |
| | | WebResponseContent content = new WebResponseContent(); |
| | | try |
| | | { |
| | | LikuServiceReference.WmsStereoWhServiceClient likuClient = new LikuServiceReference.WmsStereoWhServiceClient(); |
| | | |
| | | string inparam = JsonConvert.SerializeObject(putAway); |
| | | string response = likuClient.putaway(inparam); |
| | | if (response != null) |
| | | { |
| | | PutAwayResponse res = JsonConvert.DeserializeObject<PutAwayResponse>(response); |
| | | if(res!=null&&res.MSGTX=="S") |
| | | { |
| | | content = WebResponseContent.Instance.OK("䏿¶åä¼ æåï¼"); |
| | | } |
| | | } |
| | | |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | content = WebResponseContent.Instance.Error(ex.Message); |
| | | } |
| | | return content; |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | /// <summary> |
| | | /// 使ååºç»æåä¼ |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | public WebResponseContent CallPutAwayReturn(PutAwayReturnRequest putAwayReturn) |
| | | { |
| | | WebResponseContent content = new WebResponseContent(); |
| | | try |
| | | { |
| | | LikuServiceReference.WmsStereoWhServiceClient likuClient = new LikuServiceReference.WmsStereoWhServiceClient(); |
| | | |
| | | string inparam = JsonConvert.SerializeObject(putAwayReturn); |
| | | string response = likuClient.putAwayReturn(inparam); |
| | | if (response != null) |
| | | { |
| | | PutAwayReturnResponse res = JsonConvert.DeserializeObject<PutAwayReturnResponse>(response); |
| | | if (res != null && res.MSGTX == "S") |
| | | { |
| | | content = WebResponseContent.Instance.OK("使ååºåä¼ æåï¼"); |
| | | } |
| | | } |
| | | |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | content = WebResponseContent.Instance.Error(ex.Message); |
| | | } |
| | | return content; |
| | | |
| | | } |
| | | |
| | | /// <summary> |
| | | /// å¯å¨è°åº¦ |
| | | /// æ¯äºè¿ªWMSåºåºåæä»¤è·å |
| | | /// </summary> |
| | | private WebResponseContent SrartScheduler() |
| | | /// <returns></returns> |
| | | public WebResponseContent SelectOutStoreOrder() |
| | | { |
| | | WebResponseContent webResponse = new WebResponseContent(); |
| | | var jobs = BaseDal.QueryData(); |
| | | WebResponseContent content = new WebResponseContent(); |
| | | try |
| | | { |
| | | foreach (var job in jobs) |
| | | StereoServiceReference.WhStereoWebServiceClient client = new StereoServiceReference.WhStereoWebServiceClient(); |
| | | SelectOutStoreOrderRequest outStoreOrder = new SelectOutStoreOrderRequest(); |
| | | outStoreOrder.WERKS = AppSettings.Configuration["WERKS"]; |
| | | outStoreOrder.WH_NUMBER = AppSettings.Configuration["SYSNO"]; |
| | | string inparam = JsonConvert.SerializeObject(outStoreOrder); |
| | | //string response = client.selectOutStoreOrder(inparam); |
| | | string response = "{\r\n \"MSGTY\": \"S\",\r\n \"DATA\": \"[{REQUIREMENT_NO=XAXQGX25012005354, WERKS=GX25, WH_NUMBER=null, SYSNOD=G30, BUSINESS_CODE=00, BUSINESS_NAME=47, LGORT=0030, STATION=null, MO_NO=null, SAP_OUT_NO=null, RECEIVE_LGORT=W001, OVERSTEP_REQ_FLAG=0, SPLIT=null, STATUS=01, CREATE_PERSON=66694:å®åè¶
, CREATE_DATE=2024-12-18 11:36:17, ITEMS=[{REQUIREMENT_ITEM_NO=1, MATNR=12825222-00, BATCH=null, QTY=10.0, GEAR=null, PI_NO=null, LABELS=[]}]}, {REQUIREMENT_NO=XAXQGX25012005353, WERKS=GX25, WH_NUMBER=null, SYSNOD=G30, BUSINESS_CODE=00, BUSINESS_NAME=47, LGORT=0030, STATION=null, MO_NO=null, SAP_OUT_NO=null, RECEIVE_LGORT=W001, OVERSTEP_REQ_FLAG=0, SPLIT=null, STATUS=01, CREATE_PERSON=66694:å®åè¶
, CREATE_DATE=2024-12-18 11:35:22, ITEMS=[{REQUIREMENT_ITEM_NO=1, MATNR=12825222-00, BATCH=null, QTY=10.0, GEAR=null, PI_NO=null, LABELS=[]}]}]\",\r\n \"MSGTX\": \"success\"\r\n}"; |
| | | if (response != null) |
| | | { |
| | | scheduler.AddJob(job); |
| | | SelectOutStoreOrderResponse res = JsonConvert.DeserializeObject<SelectOutStoreOrderResponse>(response); |
| | | if (res != null && res.MSGTY == "S"&&!string.IsNullOrEmpty(res.DATA)) |
| | | { |
| | | string data = stringToJson(res.DATA); |
| | | string newdata = data.Replace("},\"", "},").Replace("\" ", "\""); |
| | | List<OutStoreData> outStoreList = JsonConvert.DeserializeObject<List<OutStoreData>>(newdata); |
| | | foreach (var item in outStoreList) |
| | | { |
| | | Dt_OutBoundOrderBYD outBoundOrderBYD = new Dt_OutBoundOrderBYD(); |
| | | outBoundOrderBYD.REQUIREMENT_NO = item.REQUIREMENT_NO; |
| | | outBoundOrderBYD.WRKS = item.WERKS; |
| | | outBoundOrderBYD.WH_NUMBER = item.WH_NUMBER; |
| | | outBoundOrderBYD.SYSNOD = item.SYSNOD; |
| | | outBoundOrderBYD.BUSINESS_CODE = item.BUSINESS_CODE; |
| | | outBoundOrderBYD.BUSINESS_NAME = item.BUSINESS_NAME; |
| | | outBoundOrderBYD.LGORT=item.LGORT; |
| | | outBoundOrderBYD.STATION=item.STATION; |
| | | outBoundOrderBYD.MO_NO = item.MO_NO; |
| | | outBoundOrderBYD.SAP_OUT_NO = item.SAP_OUT_NO; |
| | | outBoundOrderBYD.RECEIVE_LGORT = item.RECEIVE_LGORT; |
| | | outBoundOrderBYD.OVERSTEP_REQ_FLAG = item.OVERSTEP_REQ_FLAG; |
| | | outBoundOrderBYD.SPLIT=item.SPLIT; |
| | | outBoundOrderBYD.STATUS=item.STATUS; |
| | | outBoundOrderBYD.CREATE_PERSON=item.CREATE_PERSON; |
| | | outBoundOrderBYD.CREATE_DATE=item.CREATE_DATE; |
| | | _outBoundOrderBYDRepository.AddData(outBoundOrderBYD); |
| | | foreach (var detail in item.ITEMS) |
| | | { |
| | | Dt_OutboundOrderDetailBYD outboundOrderDetailBYD = new Dt_OutboundOrderDetailBYD(); |
| | | outboundOrderDetailBYD.REQUIREMENT_NO = outBoundOrderBYD.REQUIREMENT_NO; |
| | | outboundOrderDetailBYD.REQUIREMENT_ITEM_NO = detail.REQUIREMENT_ITEM_NO; |
| | | outboundOrderDetailBYD.MATNR=detail.MATNR; |
| | | outboundOrderDetailBYD.BATCH=detail.BATCH; |
| | | outboundOrderDetailBYD.QTY=detail.QTY; |
| | | outboundOrderDetailBYD.GEAR=detail.GEAR; |
| | | outboundOrderDetailBYD.PI_NO=detail.PI_NO; |
| | | _outboundOrderDetailByDRepository.AddData(outboundOrderDetailBYD); |
| | | foreach (var label in detail.LABELS) |
| | | { |
| | | if (label != null) |
| | | { |
| | | Dt_OutboundOrderDetail_LabelsBYD outboundOrderDetail_LabelsBYD = new Dt_OutboundOrderDetail_LabelsBYD(); |
| | | outboundOrderDetail_LabelsBYD.LABEL_NO = label.LABLEL_NO; |
| | | outboundOrderDetail_LabelsBYD.CONTENT_LABEL_NO = label.CONTENT_LABLEL_NO; |
| | | outboundOrderDetail_LabelsBYD.REQUIREMENT_NO = item.REQUIREMENT_NO; |
| | | outboundOrderDetail_LabelsBYD.REQUIREMENT_ITEM_NO = detail.REQUIREMENT_ITEM_NO; |
| | | _outboundOrderDetailLabelsByDRepository.AddData(outboundOrderDetail_LabelsBYD); |
| | | } |
| | | scheduler.Start(); |
| | | } |
| | | } |
| | | } |
| | | content = WebResponseContent.Instance.OK(); |
| | | } |
| | | } |
| | | |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | return webResponse.Error(ex.Message); |
| | | content = WebResponseContent.Instance.Error(ex.Message); |
| | | } |
| | | Console.WriteLine("æå¡å¯å¨æåï¼"); |
| | | return webResponse.OK(); |
| | | return content; |
| | | |
| | | } |
| | | |
| | | public WebResponseContent CloseServe() |
| | | |
| | | /// <summary> |
| | | /// åºåºå®æä¿¡æ¯æ¥å£ï¼åºåºåä¼ |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | public WebResponseContent CallPickAndPost(PickAndPostRequest pickAndPost) |
| | | { |
| | | WebResponseContent webResponse = new WebResponseContent(); |
| | | WebResponseContent content = new WebResponseContent(); |
| | | try |
| | | { |
| | | StereoServiceReference.WhStereoWebServiceClient client = new StereoServiceReference.WhStereoWebServiceClient(); |
| | | |
| | | scheduler.Shutdown(); |
| | | Console.WriteLine("æå¡å
³éæåï¼"); |
| | | WriteLog.Write_Log("æå¡", "æå¡", "æå¡å
³éæå!"); |
| | | string inparam = JsonConvert.SerializeObject(pickAndPost); |
| | | string response = client.pickAndPost(inparam); |
| | | if (response != null) |
| | | { |
| | | PickAndPostResponse res = JsonConvert.DeserializeObject<PickAndPostResponse>(response); |
| | | if (res != null && res.MSGTX == "S") |
| | | { |
| | | content = WebResponseContent.Instance.OK("åºåºåä¼ æåï¼"); |
| | | } |
| | | } |
| | | |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | WriteLog.Write_Log("æå¡", "æå¡", "å
³éæå¡\n[å¼å¸¸]" + ex.Message); |
| | | content = WebResponseContent.Instance.Error(ex.Message); |
| | | } |
| | | return webResponse.OK("æå¡å
³éæåï¼"); |
| | | return content; |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | /// <summary> |
| | | /// ç«åºéåä¿¡æ¯æ¥å£ï¼ä¾ä¸æ¸¸ç³»ç»è°ç¨ï¼ç«åºçæéè´§ä»»å¡ |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | public ReturnInventoryResponse returnInventory(ReturnInventoryRequest inventoryRequest) |
| | | { |
| | | ReturnInventoryResponse returnInventoryResponse = new ReturnInventoryResponse(); |
| | | try |
| | | { |
| | | //todo:WMSçæéè´§ä»»å¡ |
| | | |
| | | } |
| | | catch (Exception) |
| | | { |
| | | |
| | | |
| | | } |
| | | return returnInventoryResponse; |
| | | |
| | | } |
| | | |
| | | /// <summary> |
| | | /// ç«åºWMSåºåä¿¡æ¯æ¥å£ï¼ä¾ä¸æ¸¸ç³»ç»è°ç¨ |
| | | /// </summary> |
| | | /// <param name="inventoryQueryRequest"></param> |
| | | /// <returns></returns> |
| | | public InventoryQueryResponse InventoryQuery(InventoryQueryRequest inventoryQueryRequest) |
| | | { |
| | | InventoryQueryResponse inventoryQueryResponse = new InventoryQueryResponse(); |
| | | try |
| | | { |
| | | //todo:WMSæ¥è¯¢å®æ¶åºå |
| | | |
| | | } |
| | | catch (Exception) |
| | | { |
| | | |
| | | |
| | | } |
| | | return inventoryQueryResponse; |
| | | |
| | | } |
| | | |
| | | /// <summary> |
| | | /// ç«åºWMSå»ç»/è§£å»ä¿¡æ¯æ¥å£ï¼ä¾ä¸æ¸¸ç³»ç»è°ç¨ |
| | | /// </summary> |
| | | /// <param name="freezeByCustomerResponse"></param> |
| | | /// <returns></returns> |
| | | public freezeByCustomerResponse freezeByCustomer(freezeByCustomerRequest freezeRequest) |
| | | { |
| | | freezeByCustomerResponse freezeResponse = new freezeByCustomerResponse(); |
| | | try |
| | | { |
| | | //todo:WMSæ¥è¯¢å»ç»è§£å»ä¿¡æ¯ |
| | | |
| | | } |
| | | catch (Exception) |
| | | { |
| | | |
| | | |
| | | } |
| | | return freezeResponse; |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | public String stringToJson(String message) |
| | | { |
| | | String result = ""; |
| | | //æ¿æ¢=为":" |
| | | if (message.Contains("=")) |
| | | { |
| | | message = message.Replace("=", "\":\""); |
| | | } |
| | | //æ¿æ¢{为{" |
| | | if (message.Contains("{")) |
| | | { |
| | | message = message.Replace("{", "{\""); |
| | | } |
| | | //æ¿æ¢}为"} |
| | | if (message.Contains("}")) |
| | | { |
| | | message = message.Replace("}", "\"}"); |
| | | } |
| | | //æ¿æ¢[为[" |
| | | if (message.Contains("[")) |
| | | { |
| | | message = message.Replace("[", "[\""); |
| | | } |
| | | //æ¿æ¢]为"] |
| | | if (message.Contains("]")) |
| | | { |
| | | message = message.Replace("]", "\"]"); |
| | | } |
| | | //æ¿æ¢,为"," |
| | | if (message.Contains(",")) |
| | | { |
| | | message = message.Replace(",", "\",\""); |
| | | } |
| | | //æ¿æ¢"[为[ |
| | | if (message.Contains("\"[")) |
| | | { |
| | | message = message.Replace("\"[", "["); |
| | | } |
| | | //æ¿æ¢]"为] |
| | | if (message.Contains("]\"")) |
| | | { |
| | | message = message.Replace("]\"", "]"); |
| | | } |
| | | //æ¿æ¢"{为{ |
| | | if (message.Contains("\"{")) |
| | | { |
| | | message = message.Replace("\"{", "{"); |
| | | } |
| | | //æ¿æ¢}"为} |
| | | if (message.Contains("}\"")) |
| | | { |
| | | message = message.Replace("}\"", "}"); |
| | | } |
| | | result = message; |
| | | return result; |
| | | } |
| | | |
| | | } |
| | | } |