1
dengjunjie
2025-06-08 3311f02194604247c1fb0384ecc43cc3ef3f04be
1
已删除3个文件
已修改6个文件
已添加4个文件
228 ■■■■ 文件已修改
代码管理/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/15173735-4d40-4303-9957-72c73104d72f.vsidx 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/1b562594-4598-4984-b23d-47d2174f2526.vsidx 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/64588fc3-3956-44f9-a94a-b42bcc6d9b8b.vsidx 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/b059467b-47d8-4c04-b5e8-149638790949.vsidx 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/b87d687f-d7bb-4da2-b1ce-f7dcf001b90e.vsidx 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/d48a3c6c-f39c-42e9-bd7e-a9ecb962fc09.vsidx 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_ITaskInfoService/ITaskService.cs 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/PartialTaskService_AGV.cs 76 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/PDAController.cs 45 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Log/System/API请求/2025-06-08/叫料任务下发250608.txt 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/ZhongHePDA/common/http.interceptor.js 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/ZhongHePDA/pages/basic/cachePoint.vue 30 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/ZhongHePDA/pages/task/AgvTask.vue 65 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/15173735-4d40-4303-9957-72c73104d72f.vsidx
Binary files differ
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/1b562594-4598-4984-b23d-47d2174f2526.vsidx
Binary files differ
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/64588fc3-3956-44f9-a94a-b42bcc6d9b8b.vsidx
Binary files differ
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/b059467b-47d8-4c04-b5e8-149638790949.vsidx
Binary files differ
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/b87d687f-d7bb-4da2-b1ce-f7dcf001b90e.vsidx
Binary files differ
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/d48a3c6c-f39c-42e9-bd7e-a9ecb962fc09.vsidx
Binary files differ
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_ITaskInfoService/ITaskService.cs
@@ -47,11 +47,12 @@
        WebResponseContent GenerateOutboundTask(int[] keys);
        WebResponseContent PalletOutboundTask(string roadwayNo, string endStation);
        WebResponseContent Bind(string qty, string point);
        WebResponseContent CallMateriel(string endPoint);
        WebResponseContent MaterielCarry(string startPoint);
        WebResponseContent GetTaskInfo();
        object AGVTaskFeedBack(AGVTaskFeedBackModel taskFeedBackModel);
        WebResponseContent AcrossFloorCallMat(string point);
    }
}
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/PartialTaskService_AGV.cs
@@ -49,6 +49,61 @@
        }
        /// <summary>
        /// è´§ä½ç»‘定
        /// </summary>
        /// <param name="qty"></param>
        /// <param name="Point"></param>
        /// <returns></returns>
        public WebResponseContent Bind(string qty, string point)
        {
            try
            {
                if (Repository.QueryFirst(x => x.SourceAddress == point &&
                x.TaskStatus < AGVTaskStatusEnum.DoneFetch.ObjToInt() ||
                x.TargetAddress == point) != null)
                    throw new Exception($"站点【{point}】存在任务!");
                Dt_CachePoint? cachePoint = _basicService.CachePointService.Repository.QueryFirst(x => x.PointCode == point);
                if (cachePoint == null) throw new Exception("未找到缓存点!");
                if (cachePoint.AreaId != 4) throw new Exception("当前缓存点区域无绑定权限!");
                cachePoint.PointStatus = LocationStatusEnum.InStock.ObjToInt();
                cachePoint.Remark = qty;
                cachePoint.Modifier = App.User.UserName;
                _basicService.CachePointService.Repository.UpdateData(cachePoint);
                return WebResponseContent.Instance.OK();
            }
            catch (Exception ex)
            {
                return WebResponseContent.Instance.Error(ex.Message);
            }
        }
        /// <summary>
        /// é‡Šæ”¾ç¼“存点
        /// </summary>
        /// <param name="point"></param>
        /// <returns></returns>
        public WebResponseContent AcrossFloorCallMat(string point)
        {
            try
            {
                if (Repository.QueryFirst(x => x.SourceAddress == point &&
                x.TaskStatus < AGVTaskStatusEnum.DoneFetch.ObjToInt() ||
                x.TargetAddress == point) != null)
                    throw new Exception($"站点【{point}】存在任务!");
                Dt_CachePoint? cachePoint = _basicService.CachePointService.Repository.QueryFirst(x => x.PointCode == point);
                if (cachePoint == null) throw new Exception("未找到缓存点!");
                if (cachePoint.AreaId != 2 && cachePoint.AreaId != 5 && cachePoint.AreaId != 8)
                    throw new Exception("当前缓存点区域无释放权限!");
                cachePoint.PointStatus = LocationStatusEnum.Free.ObjToInt();
                _basicService.CachePointService.Repository.UpdateData(cachePoint);
                return WebResponseContent.Instance.OK();
            }
            catch (Exception ex)
            {
                return WebResponseContent.Instance.Error(ex.Message);
            }
        }
        /// <summary>
        /// å«æ–™
        /// </summary>
        /// <param name="endPoint"></param>
@@ -57,6 +112,11 @@
        {
            try
            {
                if (Repository.QueryFirst(x => x.SourceAddress == endPoint &&
                x.TaskStatus < AGVTaskStatusEnum.DoneFetch.ObjToInt() ||
                x.TargetAddress == endPoint) != null)
                    throw new Exception($"站点【{endPoint}】存在任务!");
                Dt_CachePoint cachePoint = GetCachePointByEndPoint(endPoint);
                Dt_Task task = new Dt_Task()
@@ -78,7 +138,7 @@
                Db.Ado.BeginTran();
                var response = SendAGVTask(task, cachePoint);
                if (response.Status)
                if (!response.Status)
                {
                    _unitOfWorkManage.RollbackTran();
                    return WebResponseContent.Instance.Error($"{response.Message}");
@@ -105,6 +165,11 @@
        {
            try
            {
                if (Repository.QueryFirst(x => x.SourceAddress == startPoint &&
                x.TaskStatus < AGVTaskStatusEnum.DoneFetch.ObjToInt() ||
                x.TargetAddress == startPoint) != null)
                    throw new Exception($"站点【{startPoint}】存在任务!");
                Dt_CachePoint cachePoint = GetCachePointByStartPoint(startPoint);
                Dt_Task task = new()
@@ -124,12 +189,21 @@
                };
                cachePoint.PointStatus = LocationStatusEnum.Lock.ObjToInt();
                Db.Ado.BeginTran();
                var response = SendAGVTask(task, cachePoint);
                if (!response.Status)
                {
                    _unitOfWorkManage.RollbackTran();
                    return WebResponseContent.Instance.Error($"{response.Message}");
                }
                _basicService.CachePointService.Repository.UpdateData(cachePoint);
                Repository.AddData(task);
                Db.Ado.CommitTran();
                return WebResponseContent.Instance.OK();
            }
            catch (Exception ex)
            {
                Db.Ado.RollbackTran();
                return WebResponseContent.Instance.Error(ex.Message);
            }
        }
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/PDAController.cs
@@ -11,6 +11,7 @@
using System.IO;
using WIDESEA_Model.Models;
using System;
using System.Net;
namespace WIDESEA_WMSServer.Controllers
{
@@ -29,28 +30,62 @@
            _taskService = taskService;
        }
        /// <summary>
        /// ç»‘定货位
        /// </summary>
        /// <param name="qty"></param>
        /// <param name="point"></param>
        /// <returns></returns>
        [HttpPost, Route("Bind"), AllowAnonymous]
        public WebResponseContent Bind(string qty, string point)
        {
            return _taskService.Bind(qty, point);
        }
        /// <summary>
        /// é‡Šæ”¾ç¼“存点
        /// </summary>
        /// <param name="point"></param>
        /// <returns></returns>
        [HttpPost, Route("AcrossFloorCallMat"), AllowAnonymous]
        public WebResponseContent AcrossFloorCallMat(string point)
        {
            return _taskService.AcrossFloorCallMat(point);
        }
        /// <summary>
        /// å«æ–™
        /// </summary>
        /// <param name="endPoint"></param>
        /// <returns></returns>
        [HttpPost, Route("CallMateriel"), AllowAnonymous]
        public WebResponseContent CallMateriel([FromBody] string endPoint)
        public WebResponseContent CallMateriel(string endPoint)
        {
            return _taskService.CallMateriel(endPoint);
        }
        /// <summary>
        /// æ¬è¿
        /// </summary>
        /// <param name="startPoint"></param>
        /// <returns></returns>
        [HttpPost, Route("MaterielCarry"), AllowAnonymous]
        public WebResponseContent MaterielCarry([FromBody] string startPoint)
        public WebResponseContent MaterielCarry(string startPoint)
        {
            return _taskService.MaterielCarry(startPoint);
        }
        /// <summary>
        /// ç»„盘
        /// </summary>
        /// <param name="materielGroupDTO"></param>
        /// <returns></returns>
        [HttpPost, Route("MaterielGroup")]
        public WebResponseContent MaterielGroup([FromBody] MaterielGroupDTO materielGroupDTO)
        {
            return _inboundService.InbounOrderService.MaterielGroup(materielGroupDTO);
        }
        /// <summary>
        /// æŸ¥è¯¢å…¥åº“单
        /// </summary>
        /// <param name="pageNo"></param>
        /// <param name="orderNo"></param>
        /// <returns></returns>
        [HttpPost, Route("QueryOrderInfo")]
        public WebResponseContent QueryOrderInfo(int pageNo, string orderNo)
        {
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Log/System/APIÇëÇó/2025-06-08/½ÐÁÏÈÎÎñÏ·¢250608.txt
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,5 @@
2025/6/8 20:26:51.713
请求异常
{"请求报文":{"task_id":"68","task_name":null,"priority":"0","site_value_type":1,"src_pos":"ZH013M007","dst_pos":"ZH012M001","car_id":-1,"src_level":4,"dst_level":0,"task_type":"1132","former_id":null},"接收报文":"","错误":"The operation has timed out."}
-------------------------------
´úÂë¹ÜÀí/ZhongHePDA/common/http.interceptor.js
@@ -1,7 +1,7 @@
// let baseUrl = 'http://10.1.105.155:9995'
// let baseUrl = 'http://10.1.211.101:9004'
// let baseUrl = 'http://127.0.0.1:9995'
let baseUrl = 'http://192.168.100.14:9290'
 let baseUrl = 'http://127.0.0.1:9290'
//let baseUrl = 'http://192.168.100.14:9290'
// let baseUrl = 'http://192.168.43.71:9995'
// let baseUrl = 'http://47.112.196.253:8881'
´úÂë¹ÜÀí/ZhongHePDA/pages/basic/cachePoint.vue
@@ -11,7 +11,7 @@
                        </uni-forms-item>
                    </uni-forms>
                    <button @click="submit" type="primary" size="default" style="margin-top: 2%;">释放</button>
                    <u-toast ref="uToast" />
                <u-toast ref="BindluToast" />
                </view>
            </view>
            <view v-show="current === 1">
@@ -40,7 +40,7 @@
                istrue: false,
                range: [],
                value: "",
                items: ['释放缓存位', '拆包'],
                items: ['释放缓存位'], //, '拆包'
                current: 0
            }
        },
@@ -54,31 +54,31 @@
                  }
                },
            submit() {
                if (this.value.length <= 0) {
                    this.$refs.uToast.show({
                if (this.value == "") {
                    this.$refs.BindluToast.show({
                        title: "请输入缓存点",
                        type: "error"
                    })
                    return;
                }
                var param = {
                    MainData: {
                        matCode: this.value,
                        endPoint: this.value
                    }
                }
                this.$u.post('/api/AcrossFloorCarry/AcrossFloorCallMat', param).then(res => {
                // var param = {
                //     MainData: {
                //         matCode: this.value,
                //         endPoint: this.value
                //     }
                // }
                this.$u.post('/api/PDA/AcrossFloorCallMat?Point=' + this.value, {}).then(res => {
                    if (res.status) {
                        this.$refs.uToast.show({
                        this.$refs.BindluToast.show({
                            title: "释放成功",
                            type: "success"
                        })
                        this.carNo = "";
                        // this.carNo = "";
                        this.value = "";
                        this.locationNo = "";
                        // this.locationNo = "";
                        this.istrue = false;
                    } else {
                        this.$refs.uToast.show({
                        this.$refs.BindluToast.show({
                            title: res.message,
                            type: "error"
                        })
´úÂë¹ÜÀí/ZhongHePDA/pages/task/AgvTask.vue
@@ -5,9 +5,9 @@
        <view v-show="current === 0">
            <view style="padding: 5%;">
                <uni-forms label-width="120">
                    <uni-forms-item label="托盘编码">
                        <uni-easyinput type="text" :focus="!istrue" @input="carNoInputChange" v-model="PalletCode"
                            placeholder="请输入托盘编码" ref='midInput' />
                    <uni-forms-item label="托盘数量">
                        <uni-easyinput type="text" :focus="istrue" @input="carNoInputChange" v-model="PalletCode"
                            placeholder="请输入托盘数量" ref='midInput' />
                    </uni-forms-item>
                    <uni-forms-item label="绑定货位">
                        <uni-easyinput type="text" :focus="!istrue" @input="carNoInputChange" v-model="Point"
@@ -70,26 +70,27 @@
                }
            },
            Bind() {
                if (this.PalletCode.length <= 0&&this.Point.length) {
                if (this.PalletCode.length == "" || this.Point.length == "") {
                    this.$refs.BindluToast.show({
                        title: "托盘编码跟绑定货位不能为空",
                        title: "托盘数量跟绑定货位不能为空",
                        type: "error"
                    })
                    return;
                }
                var param = {
                    MainData: {
                        "PalletCode": this.PalletCode,
                        "Point":this.Point
                    },
                }
                this.$u.post('/api/PDA/CallMateriel', param).then(res => {
                // var param = {
                //     MainData: {
                //         "PalletCode": this.PalletCode,
                //         "Point": this.Point
                //     },
                // }
                this.$u.post('/api/PDA/Bind?qty=' + this.PalletCode + '&point=' + this.Point, {}).then(res => {
                    if (res.status) {
                        this.$refs.uToast.show({
                            title: "呼叫Agv搬运成功",
                        this.$refs.BindluToast.show({
                            title: "绑定成功",
                            type: "success"
                        })
                        this.EndAddress = "";
                        this.Point = "";
                        this.PalletCode = "";
                        this.istrue = false;
                    } else {
                        this.$refs.BindluToast.show({
@@ -100,22 +101,22 @@
                })
            },
            CallMateriel() {
                if (this.EndAddress.length <= 0) {
                if (this.EndAddress == "") {
                    this.$refs.CallMaterieluToast.show({
                        title: "请输入终点",
                        type: "error"
                    })
                    return;
                }
                var param = {
                    MainData: {
                        "endPoint": this.EndAddress
                    },
                }
                this.$u.post('/api/PDA/CallMateriel', param).then(res => {
                // var param = {
                //     MainData: {
                //         "endPoint": this.EndAddress
                //     },
                // }
                this.$u.post('/api/PDA/CallMateriel?endPoint=' + this.EndAddress, {}).then(res => {
                    if (res.status) {
                        this.$refs.uToast.show({
                            title: "呼叫Agv搬运成功",
                        this.$refs.CallMaterieluToast.show({
                            title: "叫料成功",
                            type: "success"
                        })
                        this.EndAddress = "";
@@ -129,21 +130,21 @@
                })
            },
            MaterielCarry() {
                if (this.StartAddress.length <= 0) {
                if (this.StartAddress == "") {
                    this.$refs.MaterielCarryuToast.show({
                        title: "请输入起点",
                        type: "error"
                    })
                    return;
                }
                var param = {
                    MainData: {
                        "startPoint": this.StartAddress
                    },
                }
                this.$u.post('/api/PDA/MaterielCarry', param).then(res => {
                // var param = {
                //     MainData: {
                //         "startPoint": this.StartAddress
                //     },
                // }
                this.$u.post('/api/PDA/MaterielCarry?startPoint=' + this.StartAddress, {}).then(res => {
                    if (res.status) {
                        this.$refs.uToast.show({
                        this.$refs.MaterielCarryuToast.show({
                            title: "呼叫Agv搬运成功",
                            type: "success"
                        })