| | |
| | | using MailKit.Search; |
| | | using AngleSharp.Dom; |
| | | using MailKit.Search; |
| | | using Masuit.Tools; |
| | | using Newtonsoft.Json; |
| | | using WIDESEA_Common; |
| | |
| | | using WIDESEA_Core.BaseServices; |
| | | using WIDESEA_Core.Const; |
| | | using WIDESEA_Core.Helper; |
| | | using WIDESEA_IBusinessesRepository; |
| | | using WIDESEA_IOrderRepository; |
| | | using WIDESEA_IOrderServices; |
| | | using WIDESEA_IServices; |
| | |
| | | { |
| | | private readonly IUnitOfWorkManage _unitOfWorkManage; |
| | | private readonly ISys_ConfigService _configService; |
| | | private readonly IDt_WareAreaInfoRepository _wareAreaInfoRepository; |
| | | |
| | | public Dt_InboundOrderService(IDt_InboundOrderRepository BaseDal, |
| | | IUnitOfWorkManage unitOfWorkManage, |
| | | ISys_ConfigService configService) : base(BaseDal) |
| | | ISys_ConfigService configService, |
| | | IDt_WareAreaInfoRepository wareAreaInfoRepository) : base(BaseDal) |
| | | { |
| | | _unitOfWorkManage = unitOfWorkManage; |
| | | _configService = configService; |
| | | |
| | | _wareAreaInfoRepository = wareAreaInfoRepository; |
| | | } |
| | | |
| | | public override WebResponseContent UpdateData(SaveModel saveModel) |
| | | { |
| | | var quantity = saveModel.MainData["quantity"].ToString(); |
| | | var wareHouseId = saveModel.MainData["wareHouseId"].ToString(); |
| | | |
| | | Dt_WareAreaInfo? wareinfo = _wareAreaInfoRepository.QueryFirst(x => x.WareAreaCode == wareHouseId); |
| | | |
| | | if (wareinfo == null) |
| | | { |
| | | return WebResponseContent.Instance.Error("æªæ¾å°ä»åºä¿¡æ¯!"); |
| | | } |
| | | saveModel.MainData.Add("warehouseName", wareinfo.WareAreaName.ToString()); |
| | | return base.UpdateData(saveModel); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ¥è¯¢å
¥åºåæ®ä¿¡æ¯ |
| | | /// </summary> |
| | | /// <param name="OrderNo"></param> |
| | | /// <returns></returns> |
| | | public WebResponseContent GetInboundOrderInfo(string OrderNo) |
| | | { |
| | | WebResponseContent content=new WebResponseContent(); |
| | |
| | | return content.Error(ex.Message); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æå° |
| | | /// </summary> |
| | | /// <param name="keys"></param> |
| | | /// <returns></returns> |
| | | public WebResponseContent PrintOrder(int[] keys) |
| | | { |
| | | WebResponseContent content = new WebResponseContent(); |
| | |
| | | inboundOrders.Add(InboundOrder); |
| | | } |
| | | } |
| | | content=PrintInbound(inboundOrders); |
| | | content = PrintInbound(inboundOrders); |
| | | return content; |
| | | } |
| | | catch (Exception ex) |
| | |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 夿¬¡æå° |
| | | /// </summary> |
| | | /// <param name="keys"></param> |
| | | /// <param name="num"></param> |
| | | /// <returns></returns> |
| | | public WebResponseContent MultiplePrintOrder(int keys,int num) |
| | | { |
| | | WebResponseContent content = new WebResponseContent(); |
| | | try |
| | | { |
| | | List<Dt_InboundOrder> inboundOrders = new List<Dt_InboundOrder>(); |
| | | var InboundOrder = BaseDal.QueryFirst(x => x.Id == keys); |
| | | for (int i = 0; i < num; i++) |
| | | { |
| | | if (InboundOrder != null) |
| | | { |
| | | inboundOrders.Add(InboundOrder); |
| | | } |
| | | } |
| | | |
| | | content = PrintInbound(inboundOrders); |
| | | return content; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | return content.Error("æªç¥é误ï¼è¯·è系管çå"); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æå |
| | | /// </summary> |
| | | /// <param name="id"></param> |
| | | /// <param name="num"></param> |
| | | /// <returns></returns> |
| | | public WebResponseContent SplitOrder(int id,int num) |
| | | { |
| | | WebResponseContent content = new WebResponseContent(); |
| | | try |
| | | { |
| | | var originalOrder = BaseDal.QueryFirst(x => x.Id == id); |
| | | if (originalOrder == null) |
| | | { |
| | | return content.Error("æªæ¾å°è¯¥å
¥åºåä¿¡æ¯"); |
| | | } |
| | | if(originalOrder.Quantity < num || num <= 0 || originalOrder.Quantity - num == 0) |
| | | { |
| | | return content.Error("æåæ°éä¸åæ³"); |
| | | } |
| | | Dt_InboundOrder orderNew = new Dt_InboundOrder() |
| | | { |
| | | OrderNo = GetOrderPintCode("OrderNoIn"), |
| | | UpperOrderNo = originalOrder.UpperOrderNo, |
| | | DemandClassification = originalOrder.DemandClassification, |
| | | OrderType = originalOrder.OrderType, |
| | | WarehouseName = originalOrder.WarehouseName, |
| | | Datetime = originalOrder.Datetime, |
| | | LineNumber = originalOrder.LineNumber, |
| | | ProductDrawingNumber = originalOrder.ProductDrawingNumber, |
| | | MaterialNo = originalOrder.MaterialNo, |
| | | MaterialName = originalOrder.MaterialName, |
| | | Weight = originalOrder.Weight, |
| | | WareHouseId = originalOrder.WareHouseId, |
| | | Specs = originalOrder.Specs, |
| | | Unit = originalOrder.Unit, |
| | | Texture = originalOrder.Texture, |
| | | Quantity = num, |
| | | OrderStatus = originalOrder.OrderStatus, |
| | | }; |
| | | originalOrder.Quantity = originalOrder.Quantity - num; |
| | | |
| | | BaseDal.AddData(orderNew); |
| | | BaseDal.UpdateData(originalOrder); |
| | | return content.OK(); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | return content.Error("æªç¥é误ï¼è¯·è系管çå"); |
| | | } |
| | | } |
| | | |
| | | |
| | | /// <summary> |
| | | /// æå°æçç |
| | | /// </summary> |
| | | /// <param name="num"></param> |
| | | /// <returns></returns> |
| | | public WebResponseContent PrintPalletCode(int num) |
| | | { |
| | | WebResponseContent content = new WebResponseContent(); |
| | |
| | | return content.Error("æªç¥é误ï¼è¯·è系管çå"); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è·å订åç¼å· |
| | | /// </summary> |
| | | /// <param name="printCode"></param> |
| | | /// <returns></returns> |
| | | public string GetOrderPintCode(string printCode) |
| | | { |
| | | string PrintCode = ""; |
| | |
| | | SqlSugarHelper.DbWMS.Updateable(PrintSetting).ExecuteCommand(); |
| | | return PrintCode; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è°ç¨æå°æçç æ¥å£ |
| | | /// </summary> |
| | | /// <param name="palletCodes"></param> |
| | | /// <returns></returns> |
| | | /// <exception cref="InvalidOperationException"></exception> |
| | | public WebResponseContent PrintPallet(List<string> palletCodes) |
| | | { |
| | | var configs = _configService.GetConfigsByCategory(CateGoryConst.CONFIG_SYS_IPAddress); |
| | |
| | | return JsonConvert.DeserializeObject<WebResponseContent>(result); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è°ç¨æå°åæ®æ¥å£ |
| | | /// </summary> |
| | | /// <param name="orders"></param> |
| | | /// <returns></returns> |
| | | /// <exception cref="InvalidOperationException"></exception> |
| | | public WebResponseContent PrintInbound(List<Dt_InboundOrder> orders) |
| | | { |
| | | WebResponseContent content = new WebResponseContent(); |
| | | var configs = _configService.GetConfigsByCategory(CateGoryConst.CONFIG_SYS_IPAddress); |
| | | var Base = configs.FirstOrDefault(x => x.ConfigKey == SysConfigConst.PrintIPAddress)?.ConfigValue; |
| | | var ipAddress = configs.FirstOrDefault(x => x.ConfigKey == SysConfigConst.PrintInboundOrder)?.ConfigValue; |
| | |
| | | var result = HttpsClient.PostAsync(IpAddress, orders.ToJsonString()).Result; |
| | | return JsonConvert.DeserializeObject<WebResponseContent>(result); |
| | | } |
| | | |
| | | } |
| | | } |