From ed843fc126586dcd189d34fed265ea4b185383b1 Mon Sep 17 00:00:00 2001
From: wxw <Administrator@DESKTOP-5BIMHQ3>
Date: 星期五, 13 九月 2024 16:11:13 +0800
Subject: [PATCH] 修改任务管理页面问题
---
Admin.NET/WCS.Application/Service/WcsTask/Dto/WcsTaskOutput.cs | 16 +++++
Admin.NET/WCS.Application/Service/WcsTask/WcsTaskService.cs | 11 +++
Admin.NET/WCS.Application/Service/WcsTaskMonitor/WcsTaskMonitorService.cs | 17 ++++-
Admin.NET/WCS.Application/Entity/WcsTask.cs | 20 ++++++
Admin.NET/WCS.Application/Enum/TaskEnum.cs | 17 +++++
Admin.NET/WCS.Application/Service/WcsTask/Dto/WcsTaskInput.cs | 14 ++++
Admin.NET/WCS.Application/Service/WcsTaskMonitor/Dto/WcsTaskMonitorOutput2.cs | 33 +++++++++++
Web/src/views/wcs/wcsTask/index.vue | 44 +++++++++++++-
8 files changed, 158 insertions(+), 14 deletions(-)
diff --git a/Admin.NET/WCS.Application/Entity/WcsTask.cs b/Admin.NET/WCS.Application/Entity/WcsTask.cs
index 4a3b69b..732fa88 100644
--- a/Admin.NET/WCS.Application/Entity/WcsTask.cs
+++ b/Admin.NET/WCS.Application/Entity/WcsTask.cs
@@ -108,7 +108,25 @@
/// </summary>
[SugarColumn(ColumnName = "CompleteQty", ColumnDescription = "鎷嗗灈鏁伴噺")]
public int? CompleteQty { get; set; }
-
+
+ /// <summary>
+ /// 鏄惁缁戝畾
+ /// </summary>
+ [SugarColumn(ColumnName = "IsBind", ColumnDescription = "鏄惁缁戝畾")]
+ public IsBindEnum? IsBind { get; set; }
+
+ /// <summary>
+ /// 鏁村灈鏁伴噺
+ /// </summary>
+ [SugarColumn(ColumnName = "PalletQty", ColumnDescription = "鏁村灈鏁伴噺")]
+ public int? PalletQty { get; set; }
+
+ /// <summary>
+ /// 鎷嗗灈宸ヤ綅鍙�
+ /// </summary>
+ [SugarColumn(ColumnName = "StationNum", ColumnDescription = "鎷嗗灈宸ヤ綅鍙�", Length = 10)]
+ public string? StationNum { get; set; }
+
/// <summary>
/// 鎷h揣鏂瑰紡
/// </summary>
diff --git a/Admin.NET/WCS.Application/Enum/TaskEnum.cs b/Admin.NET/WCS.Application/Enum/TaskEnum.cs
index c59998b..814b46f 100644
--- a/Admin.NET/WCS.Application/Enum/TaskEnum.cs
+++ b/Admin.NET/WCS.Application/Enum/TaskEnum.cs
@@ -103,4 +103,21 @@
/// </summary>
[Description("浜哄伐鎷h揣鍑�")]
Artificial = 1,
+}
+/// <summary>
+/// 鏄惁缁戝畾
+/// </summary>
+[Description("鏄惁鎴愬姛鏋氫妇")]
+public enum IsBindEnum
+{
+ /// <summary>
+ /// 鏈粦瀹�
+ /// </summary>
+ [Description("鏈粦瀹�")]
+ No = 0,
+ /// <summary>
+ /// 宸茬粦瀹�
+ /// </summary>
+ [Description("宸茬粦瀹�")]
+ Yes = 1
}
\ No newline at end of file
diff --git a/Admin.NET/WCS.Application/Service/WcsTask/Dto/WcsTaskInput.cs b/Admin.NET/WCS.Application/Service/WcsTask/Dto/WcsTaskInput.cs
index 30ed7df..39dba5f 100644
--- a/Admin.NET/WCS.Application/Service/WcsTask/Dto/WcsTaskInput.cs
+++ b/Admin.NET/WCS.Application/Service/WcsTask/Dto/WcsTaskInput.cs
@@ -195,8 +195,18 @@
/// 鐘舵��
/// </summary>
public TaskStatusEnum? Status { get; set; }
-
- }
+
+ /// <summary>
+ /// 鎵樼洏鍙�
+ /// </summary>
+ public string? PalletNo { get; set; }
+
+ /// <summary>
+ /// 鏉ユ簮
+ /// </summary>
+ public string? Origin { get; set; }
+
+}
/// <summary>
/// 浠诲姟琛ㄥ鍔犺緭鍏ュ弬鏁�
diff --git a/Admin.NET/WCS.Application/Service/WcsTask/Dto/WcsTaskOutput.cs b/Admin.NET/WCS.Application/Service/WcsTask/Dto/WcsTaskOutput.cs
index 928a687..42d0771 100644
--- a/Admin.NET/WCS.Application/Service/WcsTask/Dto/WcsTaskOutput.cs
+++ b/Admin.NET/WCS.Application/Service/WcsTask/Dto/WcsTaskOutput.cs
@@ -100,7 +100,21 @@
/// 鎷嗗灈鏁伴噺
/// </summary>
public int? CompleteQty { get; set; }
-
+
+ /// <summary>
+ /// 鏄惁缁戝畾
+ /// </summary>
+ public IsBindEnum? IsBind { get; set; }
+
+ /// <summary>
+ /// 鏁村灈鏁伴噺
+ /// </summary>
+ public int? PalletQty { get; set; }
+
+ /// <summary>
+ /// 鎷嗗灈宸ヤ綅鍙�
+ public string? StationNum { get; set; }
+
/// <summary>
/// 鎷h揣鏂瑰紡
/// </summary>
diff --git a/Admin.NET/WCS.Application/Service/WcsTask/WcsTaskService.cs b/Admin.NET/WCS.Application/Service/WcsTask/WcsTaskService.cs
index 3f2e706..d0e0afe 100644
--- a/Admin.NET/WCS.Application/Service/WcsTask/WcsTaskService.cs
+++ b/Admin.NET/WCS.Application/Service/WcsTask/WcsTaskService.cs
@@ -44,6 +44,8 @@
.WhereIF(!string.IsNullOrWhiteSpace(input.TaskNo), u => u.TaskNo.Contains(input.TaskNo.Trim()))
.WhereIF(input.TaskType.HasValue, u => u.TaskType == input.TaskType)
.WhereIF(input.Status.HasValue, u => u.Status == input.Status)
+ .WhereIF(!string.IsNullOrWhiteSpace(input.PalletNo), u => u.PalletNo.Contains(input.PalletNo.Trim()))
+ .WhereIF(!string.IsNullOrWhiteSpace(input.Origin), u => u.Origin.Contains(input.Origin.Trim()))
.Select<WcsTaskOutput>();
return await query.OrderBuilder(input).ToPagedListAsync(input.Page, input.PageSize);
}
@@ -179,12 +181,17 @@
if (modTask.Status > TaskStatusEnum.Doing)
throw Oops.Oh("浠诲姟鐘舵�佸紓甯�");
if (input.Status == TaskStatusEnum.Complete)
+ {
modTask.IsSuccess = TaskSuccessEnum.Success;
+ modTask.FinishDate = DateTime.Now;//瀹屾垚鏃堕棿
+ }
else
+ {
modTask.IsSuccess = TaskSuccessEnum.Fail;
- modTask.FinishDate = DateTime.Now;
+ modTask.CancelDate = DateTime.Now;//鍙栨秷鏃堕棿
+ }
modTask.Status = input.Status;
- await _wcsTaskRep.Context.Updateable(modTask).UpdateColumns(s => new { s.Status, s.IsSuccess, s.FinishDate, s.UpdateTime,s.UpdateUserId,s.UpdateUserName }).ExecuteCommandAsync();
+ await _wcsTaskRep.Context.Updateable(modTask).UpdateColumns(s => new { s.Status, s.IsSuccess, s.FinishDate, s.CancelDate, s.UpdateTime, s.UpdateUserId, s.UpdateUserName }).ExecuteCommandAsync();
//鍐欏叆浠诲姟鏄庣粏琛�
WcsTaskMonitor modTaskMonitor = new WcsTaskMonitor()
{
diff --git a/Admin.NET/WCS.Application/Service/WcsTaskMonitor/Dto/WcsTaskMonitorOutput2.cs b/Admin.NET/WCS.Application/Service/WcsTaskMonitor/Dto/WcsTaskMonitorOutput2.cs
new file mode 100644
index 0000000..880a6b4
--- /dev/null
+++ b/Admin.NET/WCS.Application/Service/WcsTaskMonitor/Dto/WcsTaskMonitorOutput2.cs
@@ -0,0 +1,33 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace WCS.Application.Service.WcsTaskMonitor.Dto
+{
+ public class WcsTaskMonitorOutput2
+ {
+ public long Id { get; set; }
+ /// <summary>
+ /// 浠诲姟鍙�
+ /// </summary>
+ public string? TaskNo { get; set; }
+
+ /// <summary>
+ /// 浜や簰浣嶇疆
+ /// </summary>
+ public string? PlcName { get; set; }
+
+ /// <summary>
+ /// 浜や簰淇℃伅
+ /// </summary>
+ public string? InteractiveMsg { get; set; }
+
+ /// <summary>
+ /// 鍒涘缓鏃堕棿
+ /// </summary>
+ public DateTime? CreateTime { get; set; }
+
+ }
+}
diff --git a/Admin.NET/WCS.Application/Service/WcsTaskMonitor/WcsTaskMonitorService.cs b/Admin.NET/WCS.Application/Service/WcsTaskMonitor/WcsTaskMonitorService.cs
index b85a40c..a536c41 100644
--- a/Admin.NET/WCS.Application/Service/WcsTaskMonitor/WcsTaskMonitorService.cs
+++ b/Admin.NET/WCS.Application/Service/WcsTaskMonitor/WcsTaskMonitorService.cs
@@ -1,4 +1,6 @@
锘�
+using WCS.Application.Service.WcsTaskMonitor.Dto;
+
namespace WCS.Application;
/// <summary>
@@ -21,7 +23,7 @@
[HttpPost]
[ApiDescriptionSettings(Name = "Page")]
[DisplayName("鍒嗛〉鏌ヨ浠诲姟鏄庣粏鐩戞帶琛�")]
- public async Task<SqlSugarPagedList<WcsTaskMonitorOutput>> Page(PageWcsTaskMonitorInput input)
+ public async Task<SqlSugarPagedList<WcsTaskMonitorOutput2>> Page(PageWcsTaskMonitorInput input)
{
input.SearchKey = input.SearchKey?.Trim();
var query = _wcsTaskMonitorRep.AsQueryable()
@@ -29,8 +31,17 @@
u.TaskNo.Contains(input.SearchKey)
)
.WhereIF(!string.IsNullOrWhiteSpace(input.TaskNo), u => u.TaskNo.Contains(input.TaskNo.Trim()))
- .Select<WcsTaskMonitorOutput>();
- return await query.OrderBuilder(input).ToPagedListAsync(input.Page, input.PageSize);
+ .LeftJoin<WcsDevice>((u, plcid) => u.PlcId == plcid.Id)
+ .Select((u, plcid) => new WcsTaskMonitorOutput2
+ {
+ Id = u.Id,
+ TaskNo = u.TaskNo,
+ PlcName = plcid.StationNum + "宸ヤ綅锛�" + plcid.Text,
+ InteractiveMsg = u.InteractiveMsg,
+ CreateTime = u.CreateTime
+ })
+ .OrderByDescending(u=>u.CreateTime);
+ return await query.OrderBuilder(input,"","").ToPagedListAsync(input.Page, input.PageSize);
}
/// <summary>
diff --git a/Web/src/views/wcs/wcsTask/index.vue b/Web/src/views/wcs/wcsTask/index.vue
index 38c5808..50b6eaf 100644
--- a/Web/src/views/wcs/wcsTask/index.vue
+++ b/Web/src/views/wcs/wcsTask/index.vue
@@ -35,6 +35,16 @@
</el-select>
</el-form-item>
</el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUI">
+ <el-form-item label="鎵樼洏鍙�">
+ <el-input v-model="queryParams.palletNo" clearable="" placeholder="璇疯緭鍏ユ墭鐩樺彿" />
+ </el-form-item>
+ </el-col>
+ <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUI">
+ <el-form-item label="鏉ユ簮">
+ <el-input v-model="queryParams.origin" clearable="" placeholder="璇疯緭鍏ユ潵婧�" />
+ </el-form-item>
+ </el-col>
<el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10">
<el-form-item>
<el-button-group style="display: flex; align-items: center;">
@@ -70,16 +80,39 @@
scope.row.status)?.name }}</el-tag>
</template>
</el-table-column>
+ <el-table-column prop="origin" label="鏉ユ簮" show-overflow-tooltip="" />
<el-table-column prop="startLocate" label="璧峰浣嶇疆" show-overflow-tooltip="" />
<el-table-column prop="endLocate" label="缁撴潫浣嶇疆" show-overflow-tooltip="" />
<el-table-column prop="palletNo" label="鎵樼洏鍙�" show-overflow-tooltip="" />
+ <el-table-column prop="completeQty" label="鎷嗗灈绠辨暟" show-overflow-tooltip="" />
+ <el-table-column prop="palletQty" label="鏁磋泛绠辨暟" show-overflow-tooltip="" />
+ <el-table-column prop="lotNo" label="鎵规鍙�" show-overflow-tooltip="" />
+ <el-table-column prop="skuNo" label="鐗╂枡缂栫爜" show-overflow-tooltip="" />
+ <el-table-column prop="skuName" label="鐗╂枡鍚嶇О" show-overflow-tooltip="" />
+ <el-table-column prop="unstackingMode" width="100" label="鎷嗗灈鏂瑰紡" show-overflow-tooltip="">
+ <template #default="scope">
+ <span v-if="scope.row.unstackingMode">
+ <el-tag :type="dv('UnstackingModeEnum', scope.row.unstackingMode)?.tagType"> {{ dv('UnstackingModeEnum',
+ scope.row.unstackingMode)?.name }}</el-tag>
+ </span>
+ </template>
+ </el-table-column>
+ <el-table-column prop="isBind" width="85" label="鏄惁缁戝畾" show-overflow-tooltip="">
+ <template #default="scope">
+ <span v-if="scope.row.isBind!=null">
+ <el-tag :type="dv('IsBindEnum', scope.row.isBind)?.tagType"> {{ dv('IsBindEnum',
+ scope.row.isBind)?.name }}</el-tag>
+ </span>
+ </template>
+ </el-table-column>
+ <el-table-column prop="stationNum" label="鎷嗗灈宸ヤ綅鍙�" show-overflow-tooltip="" />
<el-table-column prop="cancelDate" label="鍙栨秷鏃堕棿" show-overflow-tooltip="" />
<el-table-column prop="finishDate" label="瀹屾垚鏃堕棿" show-overflow-tooltip="" />
- <el-table-column label="淇敼璁板綍" width="80" align="center" show-overflow-tooltip>
+ <!-- <el-table-column label="淇敼璁板綍" width="80" align="center" show-overflow-tooltip>
<template #default="scope">
<ModifyRecord :data="scope.row" />
</template>
- </el-table-column>
+ </el-table-column> -->
<el-table-column prop="鎿嶄綔" label="鎿嶄綔" width="130" align="center" fixed="right" show-overflow-tooltip=""
v-if="auth('wcsTask:complete') || auth('wcsTask:cancell')">
<template #default="scope">
@@ -126,14 +159,15 @@
border="">
<el-table-column type="index" label="搴忓彿" width="55" align="center" />
<el-table-column prop="taskNo" label="浠诲姟鍙�" show-overflow-tooltip="" />
- <el-table-column prop="plcId" label="浜や簰宸ヤ綅鍙�" show-overflow-tooltip="" />
+ <!-- <el-table-column prop="plcId" label="浜や簰宸ヤ綅鍙�" show-overflow-tooltip="" /> -->
<el-table-column prop="plcName" label="浜や簰浣嶇疆" show-overflow-tooltip="" />
<el-table-column prop="interactiveMsg" label="浜や簰淇℃伅" show-overflow-tooltip="" />
- <el-table-column label="淇敼璁板綍" width="80" align="center" show-overflow-tooltip>
+ <el-table-column prop="createTime" label="浜や簰鏃堕棿" show-overflow-tooltip="" />
+ <!-- <el-table-column label="淇敼璁板綍" width="80" align="center" show-overflow-tooltip>
<template #default="scope">
<ModifyRecord :data="scope.row" />
</template>
- </el-table-column>
+ </el-table-column> -->
</el-table>
<el-pagination v-model:currentPage="tableParams2.page" v-model:page-size="tableParams2.pageSize"
:total="tableParams2.total" :page-sizes="[10, 20, 50, 100, 200, 500]" size="small" background=""
--
Gitblit v1.8.0