chengsc
2024-08-15 581110a3dfb2882de66795047dd4a9f248d33176
修改测试问题,添加托盘上架信息
5个文件已修改
272 ■■■■■ 已修改文件
HTML/views/ASNSetting/PalletUpShelf.html 118 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HTML/views/ASNSetting/ProcurePlanNotice.html 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Wms/WMS.BLL/BllAsnServer/PalletBindServer.cs 139 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Wms/WMS.BLL/BllAsnServer/ProcurePlanServer.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Wms/WMS.BLL/SysServer/MaterialsServer.cs 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
HTML/views/ASNSetting/PalletUpShelf.html
@@ -122,32 +122,9 @@
                            lay-filter="LAY-app-contlist-search">
                            <i class="layui-icon layui-icon-search layuiadmin-button-btn"></i>搜索
                        </button>
                        <!-- <button class="layui-btn layui-btn-sm layuiadmin-btn-list layui-btn-normal buDaLabelClass" style="margin-left: 5px;" lay-event="BuDaLabel" id="BuDaLabel">
                            <i class="layui-icon layui-icon-print layuiadmin-button-btn"></i>补打标签
                        </button>
                        <button class="layui-btn layui-btn-sm layuiadmin-btn-list layui-btn-danger delLabelClass" style="margin-left: 5px;" lay-event="delLabel" id="delLabel">
                            <i class="layui-icon layui-icon-delete layuiadmin-button-btn"></i>删除标签
                        </button> -->
                    </div>
                    <!-- 确认出库口弹窗 -->
                    <!-- <div class="layui-inline" id="divDelLotNo" style="display: none; padding-top: 10px;">
                        <div class="layui-inline">
                            <label class="layui-form-label">入库单据</label>
                            <div class="layui-input-inline" style="width: 220px;">
                                <input type="text" id="AsnNoSelect" name="AsnNoSelect" placeholder="入库单据" autocomplete="off" class="layui-input">
                                 
                            </div>
                        </div>
                        <div class="layui-inline DivLoadingArea" style="margin-top: 10px;">
                            <label class="layui-form-label">批次号</label>
                            <div class="layui-input-inline" style="width: 220px;">
                                <select name="LotNoSelect" id="LotNoSelect" lay-search>
                                    <option value=""></option>
                                </select>
                            </div>
                        </div>
                         
                    </div> -->
                </div>
            </div>
            <div class="layui-card-body"> 
@@ -217,9 +194,6 @@
    <script src="../../js/jquery-3.5.1.min.js"></script>
    <script src="../../js/jquery.cookie.js"></script>
    <script>
        // layui.extend({
        //     excel: '../../layuiadmin/layui/layui_exts/excel' // {/}的意思即代表采用自有路径,即不跟随 base 路径
        // })
        layui.config({
            base: '../../layuiadmin/' //静态资源所在路径
@@ -239,98 +213,6 @@
            // 页面加载绑定Table
            bindTable();
            //生成
            $('#BuDaLabel').on('click', function () {
                layer.open({
                    type: 2,
                    title: '打印',
                    content: 'LabelBoxBuDa.html',
                    maxmin: true,
                    area: ['430px', '390px'],
                    // btn: ['取消']
                });
            });
            $("#AsnNoSelect").on('input', function () {
                if ($("#AsnNoSelect").val() == "" || $("#AsnNoSelect").val().length < 16) {
                    return
                }
                if ($("#AsnNoSelect").val().length >= 16) {
                    $("#AsnNoSelect").val($("#AsnNoSelect").val().substr(-16))
                }
                GetLotNoByAsnNo()
            })
            function GetLotNoByAsnNo() {
                $("#LotNoSelect").empty()
                $("#LotNoSelect").append('<option value =>' + '</option>');
                form.render('select');
                var param = {
                    asnNo: $("#AsnNoSelect").val(),
                };
                sendData(IP + "/BllAsn/GetLotNoListByAsn", param, 'get', function(res) {
                    if (res.code == 0) { //成功
                        for (var i = 0; i < res.data.length; i++) {
                            $("#LotNoSelect").append('<option value =' + res.data[i] + '>' + res.data[i] + '</option>');
                        }
                        form.render('select');
                    } else { //不成功
                        layer.msg(res.msg, {
                            icon: 2,
                            time: 3000 //2秒关闭(如果不配置,默认是3秒)
                        }, function() {
                        });
                    }
                });
            }
            //删除标签
            $('#delLabel').on('click', function () {
                layer.open({
                    type: 1,
                    title: '删除标签',
                    content: $('#divDelLotNo'),
                    maxmin: false,
                    area: ['350px','340px'],
                    btn: ['确定', '取消'],
                    yes: function(index, layero) {
                        var param = {
                            AsnNo: $('#AsnNoSelect').val(),
                            LotNo: $('#LotNoSelect').val(),
                        };
                        sendData(IP + "/BllAsn/DelLabelByAsnNo", param, 'post', function(res) {
                            if (res.code == 0) { //成功
                                bindTable();
                                layer.msg(res.msg, {
                                    icon: 1,
                                    time: 1500 //1秒关闭(如果不配置,默认是3秒)
                                }, function() {
                                    $('#AsnNoSelect').val("");
                                    $("#LotNoSelect").empty()
                                    $("#LotNoSelect").append('<option value =>' + '</option>');
                                    form.render('select');
                                });
                            } else { //不成功
                                layer.msg(res.msg, {
                                    icon: 2,
                                    time: 3000 //2秒关闭(如果不配置,默认是3秒)
                                }, function() {
                                    bindTable();
                                    $('#AsnNoSelect').val("");
                                    $("#LotNoSelect").empty()
                                    $("#LotNoSelect").append('<option value =>' + '</option>');
                                    form.render('select');
                                });
                            }
                            layer.close(index);
                        });
                    }
                });
            });
            
            //自定义表头
            var TotalColsArr = [[
HTML/views/ASNSetting/ProcurePlanNotice.html
@@ -292,7 +292,7 @@
                { field: 'CreateTime', title: '下发时间', align: 'center', templet: '#templetCreateTime' },
                { field: 'UpdateUserName', title: '修改人', align: 'center', width: 110 },
                { field: 'UpdateTime', title: '修改时间', align: 'center', templet: '#templetUpdateTime' },
                { field: 'caozuo', title: '操作', fixed: 'right', width: 280, align: 'center', toolbar: '#toolbarDemo1', "disabled": true }
                //{ field: 'caozuo', title: '操作', fixed: 'right', width: 280, align: 'center', toolbar: '#toolbarDemo1', "disabled": true }
            ]];
            var TotalColsSysArr = encodeURIComponent(encodeURIComponent(JSON.stringify(TotalColsArr)))//将表头数据进行url编码
            //#endregion
@@ -367,15 +367,15 @@
                { field: 'Qty', title: '数量', align: 'center', width: 70 },
                { field: 'CompleteQty', title: '完成数量', align: 'center', width: 90 },
                { field: 'CompleteTime', title: '完成时间', align: 'center', width: 160, templet: '#templetCompleteTime2' },
                { field: 'UnitName', title: '计量单位', align: 'center', width: 90 },
                { field: 'Price', title: '单价', align: 'center', width: 65 },
                { field: 'Money', title: '金额', align: 'center', width: 65 },
                //{ field: 'UnitName', title: '计量单位', align: 'center', width: 90 },
                //{ field: 'Price', title: '单价', align: 'center', width: 65 },
                //{ field: 'Money', title: '金额', align: 'center', width: 65 },
                { field: 'PackagName', title: '包装名称', align: 'center', width: 110, },
                { field: 'CreateUserName', title: '创建人', align: 'center', width: 100 },
                { field: 'CreateTime', title: '创建时间', align: 'center', width: 160, templet: '#templetCreateTime2' },
                { field: 'UpdateUserName', title: '修改人', align: 'center', width: 150, },
                { field: 'UpdateTime', title: '修改时间', align: 'center', width: 150, templet: '#templetUpdateTime3' },
                { field: 'caozuo', title: '操作', fixed: 'right', align: 'center', toolbar: '#toolbarDemoList', "disabled": true }
                //{ field: 'caozuo', title: '操作', fixed: 'right', align: 'center', toolbar: '#toolbarDemoList', "disabled": true }
            ]];
            var DetailColsSysArr = encodeURIComponent(encodeURIComponent(JSON.stringify(DetailColsArr)))//将表头数据进行url编码
            //#endregion
Wms/WMS.BLL/BllAsnServer/PalletBindServer.cs
@@ -1834,7 +1834,7 @@
                    }
                    //如果跳巷道并且未找到合适空储位,则跳到最后一次使用的巷道查询
                    if (roadNo == "")
                    if (string.IsNullOrWhiteSpace(roadNo))
                    {
                        if (useLog != null)
                        {
@@ -1867,7 +1867,7 @@
                            roadNo = item;
                        }
                        //当前巷有位置则退出
                        if (roadNo != null)
                        if (!string.IsNullOrWhiteSpace(roadNo))
                        {
                            break;
                        }
@@ -1919,6 +1919,7 @@
                    };
                    Db.Insertable(exTask).ExecuteCommand();
                    var asnNo = "";
                    // 添加托盘绑定表托盘入库任务号  liudl
                    if (palletBindList.Count < 1)
                    {
@@ -1932,9 +1933,33 @@
                                bindModel.WareHouseNo = houseNo;
                                bindModel.RoadwayNo = roadNo;
                                Db.Updateable(bindModel).ExecuteCommand();
                                asnNo = stockModel.ASNNo;
                            }
                        }
                    }
                    foreach (DataStockDetail stockModel in stockDetail)
                    {
                        //添加托盘上架记录
                        var upShelf = new BllPalletUpShelf()
                        {
                            TaskNo = exTask.TaskNo,
                            TraceNo = asnNo,
                            PalletNo = palletNo,
                            SkuNo = stockModel.SkuNo,
                            SkuName = stockModel.SkuName,
                            LotNo = stockModel.LotNo,
                            Status = "1",
                            WareHouseNo = houseNo,
                            RoadwayNo = roadNo,
                            AreaNo = "",
                            LocatNo = "",
                            CreateUser = 0,
                        };
                        Db.Insertable(upShelf).ExecuteCommand();
                    }
                    if (palletBindList.Count >= 1)
                    {
@@ -2242,7 +2267,7 @@
                        };
                        Db.Insertable(exTask).ExecuteCommand();
                        var asnNo = "";
                        // 添加托盘绑定表托盘入库任务号 liudl
                        foreach (DataStockDetail stockModel in stockDetail)
                        {
@@ -2255,7 +2280,30 @@
                                bindModel.RoadwayNo = locate.RoadwayNo;
                                bindModel.LocatNo = locate.LocatNo;
                                Db.Updateable(bindModel).ExecuteCommand();
                                asnNo = stockModel.ASNNo;
                            }
                        }
                        foreach (DataStockDetail stockModel in stockDetail)
                        {
                            //添加托盘上架记录
                            var upShelf = new BllPalletUpShelf()
                            {
                                TaskNo = exTask.TaskNo,
                                TraceNo = asnNo,
                                PalletNo = palletNo,
                                SkuNo = stockModel.SkuNo,
                                SkuName = stockModel.SkuName,
                                LotNo = stockModel.LotNo,
                                Status = "1",
                                WareHouseNo = houseNo,
                                RoadwayNo = locate.RoadwayNo,
                                AreaNo = locate.AreaNo,
                                LocatNo = locate.LocatNo,
                                CreateUser = 0,
                            };
                            Db.Insertable(upShelf).ExecuteCommand();
                        }
                        oldTaskNo = taskNo;
@@ -2272,16 +2320,34 @@
                        }
                        Db.Updateable(oldTask).ExecuteCommand();
                        var bindModel = Db.Queryable<BllPalletBind>().First(m => m.IsDel == "0" && m.Status == "2"
                           && m.PalletNo == oldTask.PalletNo && m.TaskNo == oldTaskNo);
                        if (bindModel != null && string.IsNullOrWhiteSpace(bindModel.LocatNo))
                        var bindModelList = Db.Queryable<BllPalletBind>().Where(m => m.IsDel == "0" && m.Status == "2"
                           && m.PalletNo == oldTask.PalletNo && m.TaskNo == oldTaskNo).ToList();
                        foreach (var bindModel in bindModelList)
                        {
                            if (string.IsNullOrWhiteSpace(bindModel.LocatNo))
                        {
                            bindModel.TaskNo = oldTask.TaskNo;
                            bindModel.WareHouseNo = locate.WareHouseNo;
                            bindModel.RoadwayNo = locate.RoadwayNo;
                            bindModel.LocatNo = locate.LocatNo;
                            Db.Updateable(bindModel).ExecuteCommand();
                        }
                        }
                        //更改上架信息
                        var upShelfList = Db.Queryable<BllPalletUpShelf>().Where(m => m.IsDel == "0" && m.TaskNo == oldTask.TaskNo && m.PalletNo == palletNo).ToList();
                        foreach (var upShelf in upShelfList)
                        {
                            upShelf.WareHouseNo = locate.WareHouseNo;
                            upShelf.RoadwayNo = locate.RoadwayNo;
                            upShelf.LocatNo = locate.LocatNo;
                            upShelf.Status = "1";
                            Db.Updateable(upShelf).ExecuteCommand();
                        }
                    }
                    locate.Status = "2";
@@ -2652,6 +2718,7 @@
                    //添加操作日志记录
                    var k = new OperationASNServer().AddLogOperationAsn("入库作业", "入库日志", taskNo, "完成", $"点击完成按钮、完成任务号为:{taskNo}的任务", userId);
                }
                //判断是否是回流入库完成
                if (stockDetail.Any())
                {
@@ -3251,7 +3318,13 @@
                task.FinishDate = comTime;//完成时间
                //更新任务信息
                Db.Updateable(task).ExecuteCommand();
                //更改托盘上架记录信息
                var upShelfList = Db.Queryable<BllPalletUpShelf>().Where(m => m.IsDel == "0" && m.TaskNo == taskNo && m.PalletNo == task.PalletNo).ToList();
                foreach (var upShelf in upShelfList)
                {
                    upShelf.Status = "2";
                    Db.Updateable(upShelf).ExecuteCommand();
                }
                //判断是否是回流入库完成
                if (stockDetail.Any())
                {
@@ -3294,49 +3367,6 @@
                        Db.Updateable(dataBoxInfoList).ExecuteCommand();
                        #endregion
                        #region 采购计划
                        //var noticeDetail = Db.Queryable<BllArrivalNoticeDetail>().First(m => m.IsDel == "0" && m.Id == item.ASNDetailNo);
                        //if (noticeDetail == null)
                        //{
                        //    throw new Exception("未查询到托盘绑定的入库单明细信息");
                        //}
                        //var notice = Db.Queryable<BllArrivalNotice>().First(m => m.IsDel == "0" && m.ASNNo == noticeDetail.ASNNo);
                        //if (notice == null)
                        //{
                        //    throw new Exception("未查询到托盘绑定的入库单信息");
                        //}
                        //if (notice.Type == "1" && !string.IsNullOrEmpty(noticeDetail.OrderDetailCode))
                        //{
                        //    //采购单明细
                        //    var planDetail = Db.Queryable<BllProcurePlanNoticeDetail>().First(it => it.OrderDetailCode == noticeDetail.OrderDetailCode && it.IsDel == "0");
                        //    planDetail.CompleteQty += item.Qty;
                        //    if (planDetail.CompleteQty >= planDetail.Qty)
                        //    {
                        //        planDetail.Status = "2";
                        //        planDetail.CompleteTime = comTime;
                        //    }
                        //    Db.Updateable(planDetail).ExecuteCommand();
                        //    //采购单
                        //    var planOrd = Db.Queryable<BllProcurePlanNotice>().First(it => it.Id == planDetail.ParentId && it.IsDel == "0");
                        //    var planDetailNum = Db.Queryable<BllProcurePlanNoticeDetail>()
                        //    .Count(m => m.IsDel == "0" && m.ParentId == planDetail.ParentId && m.Status != "2");
                        //    if (planDetailNum == 0)
                        //    {
                        //        planOrd.Status = "2";
                        //        planOrd.CompleteTime = comTime;
                        //        Db.Updateable(planOrd).ExecuteCommand();
                        //    }
                        //    else
                        //    {
                        //        if (planOrd.Status == "0")
                        //        {
                        //            planOrd.Status = "1";
                        //            Db.Updateable(planOrd).ExecuteCommand();
                        //        }
                        //    }
                        //}
                        #endregion
                        item.Status = "3";
                        item.CompleteTime = comTime;
                    }
@@ -3587,6 +3617,15 @@
                    }
                    Db.Updateable(bind).ExecuteCommand();
                }
                //更改托盘上架记录信息
                var upShelfList = Db.Queryable<BllPalletUpShelf>().Where(m => m.IsDel == "0" && m.TaskNo == taskNo && m.PalletNo == task.PalletNo).ToList();
                foreach (var upShelf in upShelfList)
                {
                    upShelf.IsDel = "1";
                    Db.Updateable(upShelf).ExecuteCommand();
                }
                //储位信息
                var locate = Db.Queryable<SysStorageLocat>().First(m => m.LocatNo == task.EndLocat);
                if (locate != null)
                {
Wms/WMS.BLL/BllAsnServer/ProcurePlanServer.cs
@@ -271,6 +271,7 @@
                {
                    Status = "0",                   
                    OrderCode = model.OrderCode,
                    UserName = model.Username  //制单人
                };
                // 插入采购单总表
                int parentId = Db.Insertable(planModel).ExecuteReturnIdentity();
Wms/WMS.BLL/SysServer/MaterialsServer.cs
@@ -57,6 +57,8 @@
        {
            return Db.Queryable<SysMaterials>()
                     .LeftJoin<SysUserInfor>((a, b) => a.CreateUser == b.Id)
                     .LeftJoin<SysPackag>((a, b,c) => a.PackagNo == c.PackagNo)
                     .Where((a,b,c) => c.IsDel == "0")
                     .WhereIF(!string.IsNullOrEmpty(skuNo), a => a.SkuNo.Contains(skuNo))
                     .WhereIF(!string.IsNullOrEmpty(skuName), a => a.SkuNo.Contains(skuName))
                     .WhereIF(!string.IsNullOrEmpty(auditStatusNo), a => a.AuditStatusNo == auditStatusNo)
@@ -66,7 +68,7 @@
                     .WhereIF(!string.IsNullOrEmpty(environment), a => a.Environment == environment)
                     .WhereIF(!string.IsNullOrEmpty(categoryNo), a => a.CategoryNo == categoryNo)
                     .Where(a => a.IsDel == "0")
                     .Select<MaterialsDto>((a, b) => new MaterialsDto() { CreateUserName = b.RealName }, true)
                     .Select<MaterialsDto>((a, b, c) => new MaterialsDto() { CreateUserName = b.RealName,PackagName = c.PackagName }, true)
                     .ToListAsync();
        }