PipeLineLems/pipelinelems_web/src/widgets/PipeAccessoryPick/Models/Service/PipeAccessoryPick.ts
@@ -62,6 +62,11 @@ return request.post('/api/v1/PipeLineLems/WorkPlan/FindSingleByFilter', data) } export const getPickRet = (data: any) => { return request.post('/api/v1/PipeLineLems/WorkPlanPublic/getPickRet', data) } /** * æ ¹æ® ä»»å¡ç¼å·è¿è¡å¼å·¥ * @returns PipeLineLems/pipelinelems_web/src/widgets/PipeAccessoryPick/Views/Pages/PipeAccessoryPick/PipeAccessoryPick.tsx
@@ -17,9 +17,8 @@ getPlaceNoForStockList, getMaterialModelList, instock, findSingleWorkPlanByFilter, pick, finishProduction getPickRet, pick } from '@/widgets/PipeAccessoryPick/Models/Service/PipeAccessoryPick' import { Message } from '@element-plus/icons-vue/dist/types' @@ -30,6 +29,7 @@ const queryForm = ref({ pipeSpecCode: '', continerNo:'', placeNo:'', processRouteNumber: '', taskCode: '', length: '', @@ -104,12 +104,13 @@ processName:'è£ é å·¥åº', processName_FilterMode:2,//ç²¾åæ¥è¯¢ } const workPlan = await findSingleWorkPlanByFilter(param); const workPlan = await getPickRet(param); console.log('è¿å:'+workPlan); if(workPlan==''){ if(workPlan.code!="200"){ ElMessage.error('æ²¡ææ¾å°æ°æ®'); queryForm.value ={ pipeSpecCode: '', continerNo:'', placeNo:'', processRouteNumber: '', taskCode: '', length: '', @@ -124,7 +125,10 @@ processName: '', equipmentCode: ''} }else{ queryForm.value=workPlan; queryForm.value=workPlan.data.workPlan; queryForm.value.placeNo=workPlan.data.placeNo; queryForm.value.continerNo=workPlan.data.continerNo; } }; @@ -146,40 +150,44 @@ const param={ pipeSpecCode:queryForm.value.pipeSpecCode, continerNo:queryForm.value.continerNo, placeNo:queryForm.value.placeNo }; const ret = await pick(param); console.log('è¿å:'+ret); if(ret.code="200"){ if(ret.code=="200"){ ElMessage.success('忣æå'); }else{ ElMessage.error('åæ£å¤±è´¥:'+ret.message); } }) } // å®å·¥äºä»¶å¤ç const finishWork = () => { console.log('æ§è¡å¼å·¥æä½'); if(queryForm.value.pipeSpecCode==''){ ElMessage.error('请è¾å ¥ç®¡æ®µç¼ç '); return } ConfirmBox( `ç¡®å®è¦å°ç®¡æ®µç¼ç ${queryForm.value.pipeSpecCode}å®å·¥å` ).then(async () => { //æ¨çä¸å¡é»è¾ const param={ pipeSpecCode:queryForm.value.pipeSpecCode, processName:queryForm.value.processName, }; const ret = await finishProduction(param); console.log('è¿å:'+ret); if(ret.code="200"){ ElMessage.success('å®å·¥æå'); }else{ ElMessage.error('å®å·¥å¤±è´¥:'+ret.message); } }) } // // å®å·¥äºä»¶å¤ç // const finishWork = () => { // console.log('æ§è¡å¼å·¥æä½'); // if(queryForm.value.pipeSpecCode==''){ // ElMessage.error('请è¾å ¥ç®¡æ®µç¼ç '); // return // } // ConfirmBox( // `ç¡®å®è¦å°ç®¡æ®µç¼ç ${queryForm.value.pipeSpecCode}å®å·¥å` // ).then(async () => { // //æ¨çä¸å¡é»è¾ // const param={ // pipeSpecCode:queryForm.value.pipeSpecCode, // processName:queryForm.value.processName, // }; // const ret = await finishProduction(param); // console.log('è¿å:'+ret); // if(ret.code="200"){ // ElMessage.success('å®å·¥æå'); // }else{ // ElMessage.error('å®å·¥å¤±è´¥:'+ret.message); // } // }) // } const tableData = ref([ { sequence: 1, flangeA: 'RF-200-1.6MPa', flangeB: 'WN-200-1.6MPa' }, { sequence: 2, flangeA: 'WN-250-2.5MPa', flangeB: 'SO-250-2.5MPa' }, @@ -215,6 +223,13 @@ class={styles.formInput} /> </ElFormItem> <ElFormItem label="åºä½å· "> <ElInput v-model={queryForm.value.placeNo} clearable class={styles.formInput} /> </ElFormItem> <div class={styles.actionButtons}> <ElButton type="warning" onClick={startWork}>忣</ElButton> {/* <ElButton type="warning" onClick={finishWork}>å®å·¥</ElButton> */} PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application.Contracts/Dtos/WorkPlan/PickInput.cs
@@ -23,6 +23,11 @@ /// </summary> public string ContinerNo { get; set; } /// <summary> /// åºä½å· /// </summary> public string PlaceNo { get; set; } } } PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application.Contracts/Dtos/WorkPlan/PickOutput.cs
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,31 @@ using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace CMS.Plugin.PipeLineLems.Application.Contracts.Dtos.WorkPlan { /// <summary> /// 忣è¾åºåæ°æ¨¡å /// </summary> [Serializable] public class PickOutput { public WorkPlanDto WorkPlan { get; set; } /// <summary> /// 忣æçå· /// </summary> public string ContinerNo { get; set; } /// <summary> /// åºä½å· /// </summary> public string PlaceNo { get; set; } } } PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/SharedService.cs
@@ -31,6 +31,7 @@ using CMS.Plugin.HIAWms.Abstractions; using Newtonsoft.Json; using CmsQueryExtensions; using CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterialStocks; namespace CMS.Plugin.PipeLineLems.Application.Implements; @@ -62,6 +63,7 @@ //3ãåå ¥ 忣åé //4ãåå ¥è¿½æº¯æ¥è¡¨ //5ãç©æç»ç VariableService _variableService = _serviceProvider.GetRequiredService<VariableService>(); var _workSectionManager = _serviceProvider.GetRequiredService<IWorkSectionManager>(); @@ -112,8 +114,47 @@ var firstWorkPlans = await workPlanAppService.GetListByFilterAsync(x => x.PipeSpecCode == input.PipeSpecCode); var firstWorkPlan = await workPlanAppService.GetSingleByFilterAsync(x => x.PipeSpecCode == input.PipeSpecCode); var callMaterialOrder = await callMaterialOrderAppService.GetSingleByFilterAsync(x => x.DataIdentifier == firstWorkPlan.DataIdentifier); //TODO:è¿éè°ç¨wmsç嫿æ¥å£ try { WmsMaterialStockCreateDto param = new WmsMaterialStockCreateDto() { ContainerNo = input.ContinerNo, MaterialModel = firstWorkPlan.MaterialMode, PlaceNo = input.PlaceNo, StockNumber = 1, MaterialBatch = callMaterialOrder.MaterialBatch, RedundantField1 = firstWorkPlan.ProcessRouteNumber //æ©å±å段æ¾ç¤º å·¥èºæµåç¼å· }; string baseUrl = @"http://127.0.0.1:18000/api/v1/HIAWms/"; string url = baseUrl + "LMesOperate/LMesPick"; string json = JsonConvert.SerializeObject(param); var result = HttpApiRequest.HttpPost(url, json); var res = JsonConvert.DeserializeObject<CmsApiResponse<WmsMaterialStockDto>>(result); if (res.Code == 200) { var retData = res.Data; //callMaterialOrder.MaterialBatch = retData[0].MaterialBatch; //callMaterialOrder.WmsTaskNo = retData[0].TaskNo; //callMaterialOrder.WmsRetResult = res.Message; } else { throw new UserFriendlyException(res.Message); } } catch (Exception) { throw; } var rawPipe_DataIdentifier = await materialProvider.FindByNameAsync("åæç®¡æ è¯"); var rawPipe_MaterialMode = await materialProvider.FindByNameAsync("åæç®¡åå·"); @@ -1021,6 +1062,95 @@ } /// <summary> /// 忣æ¶è·åç产计åååé åºå /// </summary> /// <param name="input"></param> /// <param name="_serviceProvider"></param> /// <param name="myCurrentUser"></param> /// <returns></returns> /// <exception cref="UserFriendlyException"></exception> public async Task<CmsApiResponse<PickOutput>> GetPickRetAsync(GetWorkPlanInput input, IServiceProvider _serviceProvider, MyCurrentUser myCurrentUser) { var callMaterialOrderRepository = _serviceProvider.GetRequiredService<ICallMaterialOrderRepository>(); var workPlanRepository = _serviceProvider.GetRequiredService<IWorkPlanRepository>(); var _workPlanAppService = _serviceProvider.GetRequiredService<IWorkPlanAppService>(); var callMaterialOrderRecordRepository = _serviceProvider.GetRequiredService<ICallMaterialOrderRecordRepository>(); var orderManager = _serviceProvider.GetRequiredService<IOrderManager>(); // æ¥æ¾æ°æ® WorkPlanDto workPlanDto = await _workPlanAppService.FindSingleByFilterAsync(input); //TODO:è¿éè°ç¨wmsç嫿æ¥å£ try { List<LMesCallMaterialInput> param = new List<LMesCallMaterialInput>() { new LMesCallMaterialInput(){ } }; /* string baseUrl = @"http://127.0.0.1:18000/api/v1/HIAWms/"; 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) { var retData = res.Data; //callMaterialOrder.MaterialBatch = retData[0].MaterialBatch; //callMaterialOrder.WmsTaskNo = retData[0].TaskNo; //callMaterialOrder.WmsRetResult = res.Message; var data = new PickOutput() { WorkPlan = workPlanDto, PlaceNo = "",//å¾ èµå¼ ContinerNo = ""//å¾ èµå¼ }; var response = new CmsApiResponse<PickOutput> { Code = 200, Data = data, Message = "å¤çæå", }; return response; } 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; } catch (Exception) { throw; } } /// <summary> /// çæéæºçWmsTaskNo /// </summary> PipeLineLems/server/src/CMS.Plugin.PipeLineLems/Controller/WorkPlanController.cs
@@ -71,7 +71,7 @@ /// <returns></returns> [HttpPost] [Route("FindListByFilter")] public virtual async Task<List<WorkPlanDto>> FindListByFilterAsync(GetWorkPlanInput input) public virtual async Task<List<WorkPlanDto>> FindListByFilterAsync([FromBody]GetWorkPlanInput input) { return await _workPlanAppService.FindListByFilterAsync(input); } @@ -82,7 +82,7 @@ /// <returns></returns> [HttpPost] [Route("FindSingleByFilter")] public virtual async Task<WorkPlanDto> FindSingleByFilterAsync(GetWorkPlanInput input) public virtual async Task<WorkPlanDto> FindSingleByFilterAsync([FromBody] GetWorkPlanInput input) { return await _workPlanAppService.FindSingleByFilterAsync(input); PipeLineLems/server/src/CMS.Plugin.PipeLineLems/Controller/WorkPlanPublicController.cs
@@ -2,6 +2,7 @@ using CMS.Framework.AspNetCore.Users; using CMS.Plugin.PipeLineLems.Application.Contracts.Dtos.WorkPlan; using CMS.Plugin.PipeLineLems.Application.Contracts.Services; using CMS.Plugin.PipeLineLems.Application.Implements; using CmsQueryExtensions.Entitys; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; @@ -20,7 +21,7 @@ [Route("api/v{version:apiVersion}/PipeLineLems/[controller]")] public class WorkPlanPublicController : ControllerBase { private readonly IWorkPlanAppService _workPlanAppService; private readonly IMesAppService _mesAppService; private readonly ICurrentUser _currentUser; private readonly Application.Implements.SharedService sharedService; @@ -31,12 +32,13 @@ /// </summary> /// <param name="testentitynameAppService">The testentityname application service.</param> public WorkPlanPublicController(IMesAppService mesAppService, ICurrentUser currentUser, Application.Implements.SharedService _sharedService, IServiceProvider serviceProvider) IServiceProvider serviceProvider, IWorkPlanAppService workPlanAppService) { _mesAppService = mesAppService; _currentUser = currentUser; sharedService = _sharedService; _serviceProvider = serviceProvider; _workPlanAppService = workPlanAppService; } /// <summary> @@ -166,5 +168,44 @@ }; } } /// <summary> /// 忣æ¶è·åç产计åååé åºå /// </summary> /// <param name="input"></param> /// <returns></returns> [HttpPost] [Route("GetPickRet")] public virtual async Task<CmsApiResponse<PickOutput>> GetPickRetAsync([FromBody] GetWorkPlanInput input) { //WorkPlanDto workPlanDto = await _workPlanAppService.FindSingleByFilterAsync(input); ////è¿éè¦è·åwmsçåºåï¼æ¥åæ è¦æ¾å°åªä¸ªæçé //return new PickOutput() //{ // WorkPlan = workPlanDto, // PlaceNo = "", // ContinerNo = "" //}; try { MyCurrentUser myCurrentUser = new MyCurrentUser() { UserAccount = _currentUser.UserAccount, UserId = _currentUser.UserId }; return await sharedService.GetPickRetAsync(input, _serviceProvider, myCurrentUser); } catch (Exception ex) { return new CmsApiResponse<PickOutput>() { Code = 400, Message = ex.Message }; } } } }