zs
2025-05-19 79edcd87697f5cce97e461443fac1e4e655f6dae
PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/SharedService.cs
@@ -1,37 +1,29 @@
using CMS.Extensions.Variable;
using CMS.Plugin.FormulaManagement.Abstractions;
using CMS.Plugin.HIAWms.Application.Contracts.Dtos.CommonDto;
using CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterialStocks;
using CMS.Plugin.MaterialManagement.Abstractions;
using CMS.Plugin.OrderManagement.Abstractions;
using CMS.Plugin.OrderManagement.Abstractions.Enums;
using CMS.Plugin.OrderManagement.Abstractions.Models;
using CMS.Plugin.PipeLineLems.Application.Contracts.Dtos.WorkPlan;
using CMS.Plugin.ProductManagement.Abstractions;
using Microsoft.Extensions.DependencyInjection;
using Volo.Abp;
using Microsoft.Extensions.DependencyInjection;
using NPOI.Util;
using CMS.Plugin.PipeLineLems.Domain.CallMaterialOrder;
using CMS.Plugin.PipeLineLems.Application.Contracts.Services;
using CMS.Plugin.PipeLineLems.Application.Contracts.Dtos.CallMaterialOrder;
using Volo.Abp.Uow;
using System.Text;
using CMS.Plugin.PipeLineLems.Domain.WorkPlan;
using CMS.Plugin.PipeLineLems.Application.Contracts.Dtos.WorkPlan;
using CMS.Plugin.PipeLineLems.Application.Contracts.Services;
using CMS.Plugin.PipeLineLems.Domain.CallMaterialOrder;
using CMS.Plugin.PipeLineLems.Domain.CallMaterialOrderRecord;
using Volo.Abp.Users;
using CmsQueryExtensions.Entitys;
using CMS.Unit.RuntimeValue.Abstractions;
using CMS.Extensions.Variable;
using CMS.Plugin.TraceManagement.Abstractions.Models.Traces;
using CMS.Plugin.PipeLineLems.Domain.WorkPlan;
using CMS.Plugin.ProcessManagement.Abstractions;
using KissUtil.Extensions;
using CMS.Plugin.ProductManagement.Abstractions;
using CMS.Plugin.TraceManagement.Abstractions;
using CMS.Plugin.ProductManagement.Abstractions.Models;
using CMS.Plugin.MaterialManagement.Abstractions;
using CMS.Plugin.HIAWms.Application.Contracts.Services;
using CMS.Plugin.HIAWms.Application.Contracts.Dtos.CommonDto;
using System.Collections.Generic;
using CMS.Plugin.HIAWms.Abstractions;
using Newtonsoft.Json;
using CMS.Plugin.TraceManagement.Abstractions.Models.Traces;
using CmsQueryExtensions;
using CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterialStocks;
using CmsQueryExtensions.Entitys;
using CmsQueryExtensions.Extension;
using KissUtil.Extensions;
using Microsoft.Extensions.DependencyInjection;
using Newtonsoft.Json;
using Volo.Abp;
using Volo.Abp.Uow;
namespace CMS.Plugin.PipeLineLems.Application.Implements;
@@ -126,7 +118,9 @@
                StockNumber = 1,
                MaterialBatch = callMaterialOrder.MaterialBatch,
                RedundantField1 = firstWorkPlan.ProcessRouteNumber //扩展字段显示 工艺流向编号
                RedundantField1 = firstWorkPlan.ProcessRouteNumber, //扩展字段显示 工艺流向编号
                RedundantField2 = firstWorkPlan.PipeSpecCode, //扩展字段显示 管段编码
                RedundantField3 = firstWorkPlan.PipeSectionName, //扩展字段显示 管段名称
            };
            string baseUrl = @"http://127.0.0.1:18000/api/v1/HIAWms/";
@@ -565,6 +559,7 @@
            string url = baseUrl + "lMesOperate/LMesCallMaterial";
            string json = JsonConvert.SerializeObject(param);
            var result = HttpApiRequest.HttpPost(url, json);
            var res = JsonConvert.DeserializeObject<CmsApiResponse<List<MyCallMaterialOutput>>>(result);
            if (res.Code == 200)
            {
@@ -577,6 +572,7 @@
            {
                throw new UserFriendlyException(res.Message);
            }
            //*/
        }
        catch (Exception)
        {
@@ -1085,33 +1081,34 @@
        WorkPlanDto workPlanDto = await _workPlanAppService.FindSingleByFilterAsync(input);
        //TODO:这里调用wms的叫料接口
        //TODO:这里调用wms的库存查询接口
        try
        {
            List<LMesCallMaterialInput> param = new List<LMesCallMaterialInput>() {
             new LMesCallMaterialInput(){
             }
            GetWmsMaterialStockInput param = new GetWmsMaterialStockInput()
            {
                RedundantField1 = workPlanDto.ProcessRouteNumber,
                RedundantField1_FilterMode = SearchFilterModeEnum.精准查询
        };
            /*
            string baseUrl = @"http://127.0.0.1:18000/api/v1/HIAWms/";
            string url = baseUrl + "lMesOperate/LMesCallMaterial";
            string url = baseUrl + "LMesOperate/FindListByFilter";
            string json = JsonConvert.SerializeObject(param);
            var result = HttpApiRequest.HttpPost(url, json);
            var res = JsonConvert.DeserializeObject<CmsApiResponse<List<MyCallMaterialOutput>>>(result);
            var res = JsonConvert.DeserializeObject<CmsApiResponse<List<WmsMaterialStockDto>>>(result);
            if (res.Code == 200)
            {
                var retData = res.Data;
                //callMaterialOrder.MaterialBatch = retData[0].MaterialBatch;
                //callMaterialOrder.WmsTaskNo = retData[0].TaskNo;
                //callMaterialOrder.WmsRetResult = res.Message;
                var retData = res.Data as List<WmsMaterialStockDto>;
                var data = new PickOutput()
                {
                    WorkPlan = workPlanDto,
                    PlaceNo = "",//待赋值
                    ContinerNo = ""//待赋值
                };
                if (retData?.Count > 0)
                {
                    data.PlaceNo = retData.First().PlaceNo;
                    data.ContinerNo = retData.First().ContainerNo;
                }
                var response = new CmsApiResponse<PickOutput>
                {
@@ -1125,23 +1122,22 @@
            else
            {
                throw new UserFriendlyException(res.Message);
            }
            };
            //*/
            //模拟
            var data = new PickOutput()
            {
                WorkPlan = workPlanDto,
                PlaceNo = "",//待赋值
                ContinerNo = ""//待赋值
            };
            var response = new CmsApiResponse<PickOutput>
            {
                Code = 200,
                Data = data,
                Message = "处理成功",
            };
            return response;
            //var data = new PickOutput()
            //{
            //    WorkPlan = workPlanDto,
            //    PlaceNo = "",//待赋值
            //    ContinerNo = ""//待赋值
            //};
            //var response = new CmsApiResponse<PickOutput>
            //{
            //    Code = 200,
            //    Data = data,
            //    Message = "处理成功",
            //};
            //return response;
        }
        catch (Exception)