| | |
| | | onClick: function () { |
| | | // this.addTask(); |
| | | } |
| | | }, { |
| | | name: "任塿å", |
| | | icon: 'ios-cog', |
| | | value: 'PauseBtn', |
| | | class: '', |
| | | plain:true, |
| | | type: 'danger', |
| | | // plain:true, |
| | | onClick: function () { |
| | | // this.addTask(); |
| | | } |
| | | }, { |
| | | name: "任塿¢å¤", |
| | | icon: 'ios-cog', |
| | | value: 'ContinueBtn', |
| | | class: '', |
| | | plain:true, |
| | | type: 'success', |
| | | // plain:true, |
| | | onClick: function () { |
| | | // this.addTask(); |
| | | } |
| | | } |
| | | // , { |
| | | // name: "æ°æ®ç»æ", |
| | |
| | | // name:"æ·»å ä»»å¡" |
| | | |
| | | // }) |
| | | let PauseBtn = this.buttons.find(r => r.name == "任塿å"); |
| | | if(null!=PauseBtn){ |
| | | PauseBtn.onClick = function (){ |
| | | let rows = this.$refs.table.getSelected(); |
| | | if (rows.length == 0) return this.$error("è¯·éæ©è¦æåçä»»å¡!"); |
| | | let addkeys = rows.map(x => { |
| | | return x[this.table.key]; |
| | | }); |
| | | if (!addkeys || addkeys.Length == 0) return this.$error("æªè·åå°ä»»å¡!"); |
| | | this.$confirm("æ¯å¦ç¡®è®¤æåä»»å¡ï¼","æç¤º",{ |
| | | // iconClass:"el-icon-success",//el-icon-removeèªå®ä¹å¾æ æ ·å¼ |
| | | confirmButtonText:"确认",//确认æé®æåæ´æ¢ |
| | | cancelButtonText:"åæ¶",//åæ¶æé®æåæ´æ¢ |
| | | // cancelBtn:"åæ¶",//åæ¶æé®æåæ´æ¢ |
| | | showClose: true,//æ¯å¦æ¾ç¤ºå³ä¸è§å
³éæé® |
| | | type: "warning",//æç¤ºç±»å success:æå/info:ä¿¡æ¯/warning:è¦å/error:æ¥é |
| | | }).then(()=>{ |
| | | let params = { |
| | | MainData: null, |
| | | DetailData: null, |
| | | DelKeys: addkeys |
| | | } |
| | | this.http.post("/api/dt_agvtask/PauseTask", params, "æ£å¨æå....").then(x => { |
| | | if (!x.status) return this.$error(x.message); |
| | | this.$success(x.message); |
| | | this.refresh(); |
| | | }); |
| | | }) |
| | | |
| | | } |
| | | } |
| | | |
| | | let ContinueBtn = this.buttons.find(r => r.name == "任塿¢å¤"); |
| | | if(null!=ContinueBtn){ |
| | | ContinueBtn.onClick = function (){ |
| | | let rows = this.$refs.table.getSelected(); |
| | | if (rows.length == 0) return this.$error("è¯·éæ©è¦æ¢å¤çä»»å¡!"); |
| | | let addkeys = rows.map(x => { |
| | | return x[this.table.key]; |
| | | }); |
| | | if (!addkeys || addkeys.Length == 0) return this.$error("æªè·åå°ä»»å¡!"); |
| | | this.$confirm("æ¯å¦ç¡®è®¤æ¢å¤ä»»å¡ï¼","æç¤º",{ |
| | | // iconClass:"el-icon-success",//el-icon-removeèªå®ä¹å¾æ æ ·å¼ |
| | | confirmButtonText:"确认",//确认æé®æåæ´æ¢ |
| | | cancelButtonText:"åæ¶",//åæ¶æé®æåæ´æ¢ |
| | | // cancelBtn:"åæ¶",//åæ¶æé®æåæ´æ¢ |
| | | showClose: true,//æ¯å¦æ¾ç¤ºå³ä¸è§å
³éæé® |
| | | type: "warning",//æç¤ºç±»å success:æå/info:ä¿¡æ¯/warning:è¦å/error:æ¥é |
| | | }).then(()=>{ |
| | | let params = { |
| | | MainData: null, |
| | | DetailData: null, |
| | | DelKeys: addkeys |
| | | } |
| | | this.http.post("/api/dt_agvtask/ContinueTask", params, "æ£å¨æ¢å¤....").then(x => { |
| | | if (!x.status) return this.$error(x.message); |
| | | this.$success(x.message); |
| | | this.refresh(); |
| | | }); |
| | | }) |
| | | |
| | | } |
| | | } |
| | | |
| | | this.buttons.forEach(x => { |
| | | if(x.value == 'Add') |
| | | { |
| | |
| | | /// éåä¸ |
| | | /// </summary> |
| | | Queue, |
| | | /// <summary> |
| | | /// æå |
| | | /// </summary> |
| | | Pause |
| | | } |
| | | } |
| | |
| | | using WIDESEA_Common; |
| | | using WIDESEA_Core.EFDbContext; |
| | | using WIDESEA_Entity.ToAGV; |
| | | using WIDESEA_WCS.JobsPart.Common; |
| | | using WIDESEA_WMS.IRepositories; |
| | | using WIDESEA_WMS.Repositories; |
| | | |
| | |
| | | { |
| | | VOLContext Context = new VOLContext(); |
| | | Idt_agvtaskRepository agvtaskRepository = new dt_agvtaskRepository(Context); |
| | | Idt_stationinfoRepository stationinfoRepository = new dt_stationinfoRepository(Context); |
| | | RequestFromTask requestFromTask = new RequestFromTask(); |
| | | var agv_tasks = agvtaskRepository.Find(x => x.agv_taskstate == AGVTaskStateEnum.Queue.ToString() && x.agv_tasktype == AGVTaskTypeEnum.TaskType_EmptyPallet.ToString() && !x.agv_fromaddress.Contains("W") && string.IsNullOrEmpty(x.agv_toaddress)).OrderByDescending(x => x.agv_grade).ThenBy(x => x.agv_createtime).ToList(); |
| | | foreach (var agv_task in agv_tasks) |
| | | { |
| | | try |
| | | { |
| | | EmptyTray.GetEmptyTrayStation(stationinfoRepository, agv_task); |
| | | requestFromTask.TASK_NO = agv_task.agv_tasknum; |
| | | requestFromTask.FROM_POSITION = agv_task.agv_fromaddress; |
| | | requestFromTask.Material = agv_task.agv_materielid; |
| | |
| | | agv_taskstate = "Create", |
| | | agv_qty = EmptyStation.quantity <= quantity ? EmptyStation.quantity : quantity, |
| | | //agv_qty = EmptyStation.quantity - toEmptyStation.quantity, |
| | | StarQuantity = EmptyStation.quantity <= quantity ? 0 : toEmptyStation.quantity, |
| | | StarQuantity = EmptyStation.quantity <= quantity ? 0 : EmptyStation.quantity - quantity, |
| | | EndQuantity = toEmptyStation.quantity, |
| | | agv_tasktype = "TaskType_EmptyPallet", |
| | | agv_toaddress = toEmptyStation.stationCode, |
| | |
| | | *代ç ç±æ¡æ¶çæ,任使´æ¹é½å¯è½å¯¼è´è¢«ä»£ç çæå¨è¦ç |
| | | */ |
| | | using WIDESEA_Core.BaseProvider; |
| | | using WIDESEA_Core.Utilities; |
| | | using WIDESEA_Entity.DomainModels; |
| | | |
| | | namespace WIDESEA_WMS.IServices |
| | | { |
| | | public partial interface Idt_agvtaskService : IService<dt_agvtask> |
| | | { |
| | | WebResponseContent ContinueTask(SaveModel saveModel); |
| | | WebResponseContent PauseTask(SaveModel saveModel); |
| | | } |
| | | } |
| | |
| | | using WIDESEA_WMS.Common; |
| | | using System.Reflection.Emit; |
| | | using System.Threading.Tasks; |
| | | using System.Net; |
| | | |
| | | namespace WIDESEA_WMS.Services |
| | | { |
| | |
| | | //å¤ç§æ·ä¼ç¨å°è¿init代ç ï¼å
¶ä»æ
åµå¯ä»¥ä¸ç¨ |
| | | //base.Init(dbRepository); |
| | | } |
| | | /// <summary> |
| | | /// 任塿å |
| | | /// </summary> |
| | | /// <param name="saveModel"></param> |
| | | /// <returns></returns> |
| | | public WebResponseContent PauseTask(SaveModel saveModel) |
| | | { |
| | | WebResponseContent response = new WebResponseContent().OK(); |
| | | |
| | | foreach (var Key in saveModel.DelKeys) |
| | | { |
| | | try |
| | | { |
| | | var task = repository.Find(x => x.agv_id.ToString() == Key.ToString()).FirstOrDefault(); |
| | | if (task.agv_taskstate == AGVTaskStateEnum.Queue.ToString()) |
| | | { |
| | | task.agv_taskstate = AGVTaskStateEnum.Pause.ToString(); |
| | | repository.Update(task, x => new { x.agv_taskstate }, true); |
| | | response.OK(response.Message += $"{task.agv_tasknum}æåæå!"); |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | response.Error(response.Message += ex.Message); |
| | | } |
| | | } |
| | | return response; |
| | | } |
| | | /// <summary> |
| | | /// ä»»å¡ç»§ç» |
| | | /// </summary> |
| | | /// <param name="saveModel"></param> |
| | | /// <returns></returns> |
| | | public WebResponseContent ContinueTask(SaveModel saveModel) |
| | | { |
| | | WebResponseContent response = new WebResponseContent().OK(); |
| | | |
| | | foreach (var Key in saveModel.DelKeys) |
| | | { |
| | | try |
| | | { |
| | | var task = repository.Find(x => x.agv_id.ToString() == Key.ToString()).FirstOrDefault(); |
| | | if (task.agv_taskstate == AGVTaskStateEnum.Pause.ToString()) |
| | | { |
| | | task.agv_taskstate = AGVTaskStateEnum.Queue.ToString(); |
| | | repository.Update(task, x => new { x.agv_taskstate }, true); |
| | | response.OK(response.Message += $"{task.agv_tasknum}æ¢å¤æå!"); |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | response.Error(response.Message += ex.Message); |
| | | } |
| | | } |
| | | return response; |
| | | } |
| | | public override WebResponseContent Del(object[] keys, bool delList = true) |
| | | { |
| | | #region æ¹éä¿®æ¹è´§ä½ç¶æ |
| | |
| | | //stationinfoRepository.UpdateRange(stations, x => new { x.location_state }, true); |
| | | #endregion |
| | | VOLContext volContext = new VOLContext(); |
| | | Idt_agvtask_htyRepository agvtask_HtyRepository=new dt_agvtask_htyRepository(volContext); |
| | | Idt_agvtask_htyRepository agvtask_HtyRepository = new dt_agvtask_htyRepository(volContext); |
| | | var agvtasks = repository.Find(x => keys.Contains(x.agv_id)).ToList(); |
| | | List<dt_agvtask_hty> dt_Agvtask_Hties = new List<dt_agvtask_hty>(); |
| | | foreach (var task in agvtasks) |
| | |
| | | }; |
| | | dt_Agvtask_Hties.Add(agvtask_Hty); |
| | | } |
| | | agvtask_HtyRepository.AddRange(dt_Agvtask_Hties,true); |
| | | agvtask_HtyRepository.AddRange(dt_Agvtask_Hties, true); |
| | | return base.Del(keys, delList); |
| | | } |
| | | public WebResponseContent addNgTask(MesRequestTemp requestTemp) |
| | |
| | | using WIDESEA_WMS.IServices; |
| | | using WIDESEA_Core.Utilities; |
| | | using WIDESEA_Entity.DomainModels.Mes; |
| | | using WIDESEA_WMS.Services; |
| | | using Microsoft.AspNetCore.Authorization; |
| | | |
| | | namespace WIDESEA_WMS.Controllers |
| | | { |
| | |
| | | { |
| | | return _service.addNgTask(request); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æåä»»å¡ |
| | | /// </summary> |
| | | /// <param name="parm"></param> |
| | | /// <returns></returns> |
| | | [HttpPost, Authorize, Route("PauseTask"), AllowAnonymous] |
| | | public WebResponseContent PauseTask([FromBody] SaveModel saveModel) |
| | | { |
| | | return dt_agvtaskService.Instance.PauseTask(saveModel); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// ç»§ç»ä»»å¡ |
| | | /// </summary> |
| | | /// <param name="parm"></param> |
| | | /// <returns></returns> |
| | | [HttpPost, Authorize, Route("ContinueTask"), AllowAnonymous] |
| | | public WebResponseContent ContinueTask([FromBody] SaveModel saveModel) |
| | | { |
| | | return dt_agvtaskService.Instance.ContinueTask(saveModel); |
| | | } |
| | | } |
| | | } |