From 25be6fbad7853391a52d3a56752cd1c308c2dfd0 Mon Sep 17 00:00:00 2001
From: dengjunjie <dengjunjie@hnkhzn.com>
Date: 星期二, 14 五月 2024 15:40:30 +0800
Subject: [PATCH] 添加AGV任务删除功能
---
代码管理/WMS/WMS_Client/src/views/dialog/addTask.vue | 57 ++++++++-----
代码管理/WMS/WMS_Server/WIDESEA_WebApi/Controllers/WIDESEA_WMS/Partial/dt_agvtaskController.cs | 12 +++
代码管理/WMS/WMS_Client/src/views/Task/widesea_wms/taskinfo/dt_agvtask.vue | 33 ++++----
代码管理/WMS/WMS_Server/WIDESEA_Entity/DomainModels/Taskinfo/dt_agvtask.cs | 10 +-
代码管理/WMS/WMS_Server/WIDESEA_WMS/IServices/Taskinfo/Partial/Idt_agvtaskService.cs | 3
代码管理/WMS/WMS_Client/src/api/http.js | 2
代码管理/WMS/WMS_Client/src/views/extension/widesea_wms/taskinfo/dt_agvtask.js | 14 +++
代码管理/WMS/WMS_Server/WIDESEA_WMS/Services/Taskinfo/Partial/dt_agvtaskService.cs | 57 ++++++++++++++
8 files changed, 141 insertions(+), 47 deletions(-)
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Client/src/api/http.js" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Client/src/api/http.js"
index 0af90a4..eb0a016 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Client/src/api/http.js"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Client/src/api/http.js"
@@ -12,7 +12,7 @@
let loadingInstance;
let loadingStatus = false;
if (process.env.NODE_ENV == 'development') {
- axios.defaults.baseURL = 'http://127.0.0.1:8098/';
+ axios.defaults.baseURL = 'http://192.168.12.101:8098/';
}
else if (process.env.NODE_ENV == 'debug') {
axios.defaults.baseURL = 'http://192.168.12.101:8098/';
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Client/src/views/Task/widesea_wms/taskinfo/dt_agvtask.vue" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Client/src/views/Task/widesea_wms/taskinfo/dt_agvtask.vue"
index 3904ac0..7f4b64e 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Client/src/views/Task/widesea_wms/taskinfo/dt_agvtask.vue"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Client/src/views/Task/widesea_wms/taskinfo/dt_agvtask.vue"
@@ -22,7 +22,7 @@
export default defineComponent({
setup() {
const table = ref({
- key: 'ID',
+ key: 'agv_id',
footer: "Foots",
cnName: 'AGV浠诲姟',
name: 'taskinfo/dt_agvtask',
@@ -30,23 +30,24 @@
sortName: "ID"
});
const editFormFields = ref({"agv_fromaddress":"","agv_toaddress":"","agv_tasktype":"","agv_grades":"","agv_code":""});
- const editFormOptions = ref([[{
- title: "NG涓嬫枡浣�",
- required: false,
- field: "agv_fromaddress",
- type: "select",
- data: [
- { key: "X01001003", value: "1鍗曞厓NG涓嬫枡浣�" },
- { key: "X02001003", value: "2鍗曞厓NG涓嬫枡浣�" },
- { key: "X03001002", value: "3鍗曞厓NG涓嬫枡浣�" }
- ]
- },
- // {"title":"NG涓嬫枡浣�","field":"agv_fromaddress","type":"text","required":true}
- ],
+ const editFormOptions = ref([
+ // [{
+ // title: "NG涓嬫枡浣�",
+ // required: false,
+ // field: "agv_fromaddress",
+ // type: "select",
+ // data: [
+ // { key: "X01001003", value: "1鍗曞厓NG涓嬫枡浣�" },
+ // { key: "X02001003", value: "2鍗曞厓NG涓嬫枡浣�" },
+ // { key: "X03001002", value: "3鍗曞厓NG涓嬫枡浣�" }
+ // ]
+ // },
+ // // {"title":"NG涓嬫枡浣�","field":"agv_fromaddress","type":"text","required":true}
+ // ],
// [{"title":"缁堢偣鍦板潃","field":"agv_toaddress","type":"text","required":true}],
- // [{"dataKey":"task_grade","data":[],"title":"浠诲姟绛夌骇","required":true,"field":"agv_grade","type":"select"}],
- // [{"dataKey":"agv_tasktypes","data":[],"title":"浠诲姟绫诲瀷","required":true,"field":"agv_tasktype","type":"select"}]
+ [{"dataKey":"task_grade","data":[],"title":"浠诲姟绛夌骇","required":true,"field":"agv_grade","type":"select"}],
+ [{"dataKey":"agv_tasktypes","data":[],"title":"浠诲姟绫诲瀷","required":true,"field":"agv_tasktype","type":"select"}]
// [{"dataKey":"agv_code","data":[],"title":"AGV缂栧彿","required":true,"field":"agv_code","type":"select"}]
]);
const searchFormFields = ref({"agv_tasknum":"","agv_fromaddress":"","agv_toaddress":"","agv_tasktype":[],"agv_taskstate":[],"agv_materielid":"","agv_createtime":"","agv_barcode":"","agv_materbarcode":""});
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Client/src/views/dialog/addTask.vue" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Client/src/views/dialog/addTask.vue"
index 3af9917..ac6d802 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Client/src/views/dialog/addTask.vue"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Client/src/views/dialog/addTask.vue"
@@ -1,6 +1,6 @@
<template>
<div>
- <vol-box :lazy="true" v-model="detialBox" title="鎵嬪姩绉诲簱" :height="350" :width="400" :padding="15">
+ <vol-box :lazy="true" v-model="detialBox" title="NG浠诲姟" :height="350" :width="400" :padding="15">
<div>
<el-form :model="formdata" label-width="120px" :rules="rules" size="mini" ref="ruleFormRef">
<!-- <el-form-item label="绫诲瀷">
@@ -10,18 +10,18 @@
</el-radio-group>
</el-form-item> -->
- <el-form-item v-if="inType == 'handle'" label="璧峰鍦板潃" prop="from_address">
- <el-select v-model="formdata.from_address" clearable filterable placeholder="璇烽�夋嫨璧峰鍦板潃">
- <el-option v-for="item in formAddressList" :label="item.key" :value="item.key" />
+ <el-form-item v-if="inType == 'handle'" label="NG涓嬫枡浣�" prop="from_address">
+ <el-select v-model="formdata.from_address" clearable filterable placeholder="璇烽�夋嫨NG涓嬫枡浣�">
+ <el-option v-for="item in formAddressList" :label="item.value" :value="item.key" />
</el-select>
</el-form-item>
- <el-form-item label="鐩殑鍦板潃" prop="to_address">
+ <!-- <el-form-item label="鐩殑鍦板潃" prop="to_address">
<el-select v-model="formdata.to_address" clearable filterable placeholder="璇烽�夋嫨鐩殑鍦板潃">
<el-option v-for="item in toAddressList" :label="item.key" :value="item.key" />
</el-select>
- </el-form-item>
+ </el-form-item> -->
<el-form-item label="">
- <el-button type="primary" @click="onSubmit()" size="mini"> 纭绉诲簱</el-button>
+ <el-button type="primary" @click="onSubmit()" size="mini"> 纭娣诲姞NG浠诲姟</el-button>
</el-form-item>
</el-form>
</div>
@@ -35,17 +35,17 @@
export default {
components: { "vol-box": VolBox1Vue },
methods: {},
- created() {
- this.http.post("/api/Sys_Dictionary/GetVueDictionary", ["route_began", "route_end"]).then(x => {
- x.forEach(item => {
- if (item.dicNo == 'route_end') {
- this.toAddressList = item.data;
- } else if (item.dicNo == 'route_began') {
- this.formAddressList = item.data;
- }
- })
- })
- },
+ // created() {
+ // this.http.post("/api/Sys_Dictionary/GetVueDictionary", ["route_began", "route_end"]).then(x => {
+ // x.forEach(item => {
+ // if (item.dicNo == 'route_end') {
+ // this.toAddressList = item.data;
+ // } else if (item.dicNo == 'route_began') {
+ // this.formAddressList = item.data;
+ // }
+ // })
+ // })
+ // },
data() {
return {
detialBox: false,
@@ -59,7 +59,11 @@
from_address: "",
to_address: ""
},
- formAddressList: [],
+ formAddressList: [
+ { key: "X01001003", value: "1鍗曞厓NG涓嬫枡浣�" },
+ { key: "X02001003", value: "2鍗曞厓NG涓嬫枡浣�" },
+ { key: "X03001002", value: "3鍗曞厓NG涓嬫枡浣�" }
+ ],
toAddressList: []
};
},
@@ -68,10 +72,17 @@
var _this = this;
this.$refs.ruleFormRef.validate((valid) => {
if (valid) {
- _this.http.post("/api/ToMes/AddToFloat3", _this.formdata, "姝e湪娣诲姞....").then(x => {
- if (!x.status) return _this.$Message.error(x.message);
- _this.$Message.success("娣诲姞鎴愬姛!");
- _this.refresh();
+ _this.http.post("/api/dt_agvtask/addNgTask", _this.formdata, "姝e湪娣诲姞....").then(x => {
+ if (!x.status){
+ _this.detialBox=false;
+ _this.formdata.from_address="";
+ _this.$Message.error(x.message);
+ }else{
+ _this.detialBox=false;
+ _this.formdata.from_address="";
+ _this.$Message.success("娣诲姞鎴愬姛!");
+ window.location.reload();
+ }
});
}
})
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Client/src/views/extension/widesea_wms/taskinfo/dt_agvtask.js" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Client/src/views/extension/widesea_wms/taskinfo/dt_agvtask.js"
index 0373480..d3c9566 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Client/src/views/extension/widesea_wms/taskinfo/dt_agvtask.js"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Client/src/views/extension/widesea_wms/taskinfo/dt_agvtask.js"
@@ -6,11 +6,12 @@
**鍚庡彴鎿嶄綔瑙侊細http://v2.volcore.xyz/document/netCoreDev
*****************************************************************************************/
//姝s鏂囦欢鏄敤鏉ヨ嚜瀹氫箟鎵╁睍涓氬姟浠g爜锛屽彲浠ユ墿灞曚竴浜涜嚜瀹氫箟椤甸潰鎴栬�呴噸鏂伴厤缃敓鎴愮殑浠g爜
+import addTask from "@/views/dialog/addTask"
let extension = {
components: {
//鏌ヨ鐣岄潰鎵╁睍缁勪欢
- gridHeader: '',
+ gridHeader: addTask,
gridBody: '',
gridFooter: '',
//鏂板缓銆佺紪杈戝脊鍑烘鎵╁睍缁勪欢
@@ -21,6 +22,12 @@
tableAction: '', //鎸囧畾鏌愬紶琛ㄧ殑鏉冮檺(杩欓噷濉啓琛ㄥ悕,榛樿涓嶇敤濉啓)
buttons: { view: [], box: [], detail: [] }, //鎵╁睍鐨勬寜閽�
methods: {
+ // onClick: function () {
+ // this.add();
+ // }
+ add(){
+ this.$refs.gridHeader.detialBox = true;
+ },
//涓嬮潰杩欎簺鏂规硶鍙互淇濈暀涔熷彲浠ュ垹闄�
onInit() { //妗嗘灦鍒濆鍖栭厤缃墠锛�
//绀轰緥锛氬湪鎸夐挳鐨勬渶鍓嶉潰娣诲姞涓�涓寜閽�
@@ -39,7 +46,7 @@
this.buttons.forEach(x => {
if(x.value == 'Add')
{
- x.name = 'NG浠诲姟'
+ x.name = 'NG浠诲姟';
}
});
//绀轰緥锛氳缃慨鏀规柊寤恒�佺紪杈戝脊鍑烘瀛楁鏍囩鐨勯暱搴�
@@ -72,6 +79,9 @@
// this.$refs.table.$refs.table.toggleRowSelection(row); //鍗曞嚮琛屾椂閫変腑褰撳墠琛�;
},
modelOpenAfter(row) {
+ // if(this.currentAction=='Add'){
+ // this.editFormFields.agv_fromaddress='xxx';
+ // }
//鐐瑰嚮缂栬緫銆佹柊寤烘寜閽脊鍑烘鍚庯紝鍙互鍦ㄦ澶勫啓閫昏緫锛屽锛屼粠鍚庡彴鑾峰彇鏁版嵁
//(1)鍒ゆ柇鏄紪杈戣繕鏄柊寤烘搷浣滐細 this.currentAction=='Add';
//(2)缁欏脊鍑烘璁剧疆榛樿鍊�
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_Entity/DomainModels/Taskinfo/dt_agvtask.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_Entity/DomainModels/Taskinfo/dt_agvtask.cs"
index e8934a1..f28587f 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_Entity/DomainModels/Taskinfo/dt_agvtask.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_Entity/DomainModels/Taskinfo/dt_agvtask.cs"
@@ -33,7 +33,7 @@
[MaxLength(50)]
[Column(TypeName = "nvarchar(50)")]
[Editable(true)]
- [Required(AllowEmptyStrings = false)]
+ //[Required(AllowEmptyStrings = false)]
public string agv_tasknum { get; set; }
/// <summary>
@@ -81,7 +81,7 @@
[MaxLength(20)]
[Column(TypeName = "nvarchar(20)")]
[Editable(true)]
- [Required(AllowEmptyStrings = false)]
+ //[Required(AllowEmptyStrings = false)]
public string agv_taskstate { get; set; }
/// <summary>
@@ -134,7 +134,7 @@
[Display(Name = "鍒涘缓鏃堕棿")]
[Column(TypeName = "datetime")]
[Editable(true)]
- [Required(AllowEmptyStrings = false)]
+ //[Required(AllowEmptyStrings = false)]
public DateTime agv_createtime { get; set; }
/// <summary>
@@ -157,8 +157,8 @@
///浠诲姟绫诲瀷
/// </summary>
[Display(Name = "浠诲姟绫诲瀷")]
- [MaxLength(20)]
- [Column(TypeName = "nvarchar(20)")]
+ [MaxLength(50)]
+ [Column(TypeName = "nvarchar(50)")]
[Editable(true)]
//[Required(AllowEmptyStrings = false)]
public string agv_tasktype { get; set; }
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/IServices/Taskinfo/Partial/Idt_agvtaskService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/IServices/Taskinfo/Partial/Idt_agvtaskService.cs"
index f56bf3e..98efc94 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/IServices/Taskinfo/Partial/Idt_agvtaskService.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/IServices/Taskinfo/Partial/Idt_agvtaskService.cs"
@@ -5,9 +5,12 @@
using WIDESEA_Entity.DomainModels;
using WIDESEA_Core.Utilities;
using System.Linq.Expressions;
+using WIDESEA_Entity.DomainModels.Mes;
+using Microsoft.AspNetCore.Mvc;
namespace WIDESEA_WMS.IServices
{
public partial interface Idt_agvtaskService
{
+ WebResponseContent addNgTask([FromBody] MesRequestTemp request);
}
}
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Services/Taskinfo/Partial/dt_agvtaskService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Services/Taskinfo/Partial/dt_agvtaskService.cs"
index 8f5044e..fc7bb72 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Services/Taskinfo/Partial/dt_agvtaskService.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Services/Taskinfo/Partial/dt_agvtaskService.cs"
@@ -26,6 +26,7 @@
using WIDESEA_Comm.LogInfo;
using StackExchange.Redis;
using WIDESEA_Comm;
+using WIDESEA_Entity.DomainModels.Mes;
namespace WIDESEA_WMS.Services
{
@@ -47,6 +48,62 @@
//base.Init(dbRepository);
}
+ public WebResponseContent addNgTask(MesRequestTemp requestTemp)
+ {
+ WebResponseContent content = new WebResponseContent();
+ try
+ {
+ var fromaddress = requestTemp.from_address;
+ VOLContext context = new VOLContext();
+ Idt_stationinfoRepository stationinfoRepository = new dt_stationinfoRepository(context);
+ IVV_Mes_WorkinfoRepository workinfoRepository = new VV_Mes_WorkinfoRepository(context);
+ var station = stationinfoRepository.Find(x => x.stationCode == fromaddress).FirstOrDefault();
+ if (_repository.Find(x => x.agv_fromaddress == fromaddress || x.agv_toaddress == fromaddress).Any())
+ throw new Exception($"璐т綅{fromaddress}宸插瓨鍦ㄤ换鍔★紒");
+ if (station == null) throw new Exception($"鏈壘鍒拌揣浣峽fromaddress}锛�");
+ if (!station.enable) throw new Exception($"璐т綅{fromaddress}鏈惎鐢紒");
+ if (station.quantity < 1) throw new Exception($"璐т綅{fromaddress}鏃犺溅杞紒");
+ var Work = workinfoRepository.Find(x => x.workOrder == station.Number && x.processCode == "17").FirstOrDefault();
+ if (Work == null) throw new Exception($"鏈壘鍒拌揣浣峽fromaddress}鐨勬満鍔犲伐宸ュ崟淇℃伅");
+ dt_agvtask agvtask = new dt_agvtask()
+ {
+ agv_fromaddress = station.stationCode,
+ agv_id = Guid.NewGuid(),
+ agv_tasknum = IdenxManager.GetTaskNo("KH-", "WMS"),
+ agv_grade = 2,
+ agv_createtime = DateTime.Now,
+ agv_taskstate = "Queue",
+ agv_materielid = station.stationType,
+ agv_qty = station.quantity,
+ agv_tasktype = "TaskType_OutsourceInbound",
+ agv_toaddress = "",
+ agv_userid = UserContext.Current.UserName,
+ bindSN = station.bindSN,
+ agv_worktype = Convert.ToInt32(Work.processCode),
+ agv_materbarcode = Work.materialCode,
+ agv_Traytype = station.tray_type,
+ jobID = station.Number,
+ agv_TrayStatus = station.tray_status
+ };
+ _repository.Add(agvtask, true);
+ station.location_state = LocationStateEnum.InBusy.ToString();
+ stationinfoRepository.Update(station, true);
+ content.OK();
+ }
+ catch (Exception ex)
+ {
+ content.Message = ex.Message;
+ }
+ return content;
+ }
+ public override WebResponseContent Update(SaveModel saveModel)
+ {
+ WebResponseContent content = new WebResponseContent();
+ var agv_id = saveModel.MainData["agv_id"].ToString();
+ var task = _repository.Find(x => x.agv_id.ToString() == agv_id).FirstOrDefault();
+ if (task.agv_taskstate != AGVTaskStateEnum.Queue.ToString()) return content.Error("褰撳墠浠诲姟涓嶅彲鏇存敼锛�");
+ return base.Update(saveModel);
+ }
#region 娣诲姞NG浠诲姟
public override WebResponseContent Add(SaveModel saveDataModel)
{
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WebApi/Controllers/WIDESEA_WMS/Partial/dt_agvtaskController.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WebApi/Controllers/WIDESEA_WMS/Partial/dt_agvtaskController.cs"
index 34a5e3a..e451e9f 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WebApi/Controllers/WIDESEA_WMS/Partial/dt_agvtaskController.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WebApi/Controllers/WIDESEA_WMS/Partial/dt_agvtaskController.cs"
@@ -11,6 +11,8 @@
using Microsoft.AspNetCore.Http;
using WIDESEA_Entity.DomainModels;
using WIDESEA_WMS.IServices;
+using WIDESEA_Core.Utilities;
+using WIDESEA_Entity.DomainModels.Mes;
namespace WIDESEA_WMS.Controllers
{
@@ -29,5 +31,15 @@
_service = service;
_httpContextAccessor = httpContextAccessor;
}
+ /// <summary>
+ /// 娣诲姞NG浠诲姟
+ /// </summary>
+ /// <param name="request"></param>
+ /// <returns></returns>
+ [HttpPost, Route("addNgTask")]
+ public WebResponseContent addNgTask([FromBody] MesRequestTemp request)
+ {
+ return _service.addNgTask(request);
+ }
}
}
--
Gitblit v1.9.3