chengsc
2025-06-02 2056ae6f3d8243b0555f437ec6d214666d5bde53
修改问题
13个文件已修改
1232 ■■■■■ 已修改文件
Pda/View/AsnSetting/WorkshopIn.html 571 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Pda/View/SoSetting/ExNoticeOut.html 29 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Wms/Model/ModelVm/PdaVm/PdaAsnVm.cs 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs 452 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs 55 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Wms/WMS.BLL/HttpServer.cs 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Wms/WMS.Entity/BllAsnEntity/BllPalletBind.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Wms/WMS.IBLL/IPdaServer/IPdaAsnServer.cs 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Wms/WMS.IBLL/IPdaServer/IPdaSoServer.cs 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Wms/Wms/Controllers/PdaAsnController.cs 54 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Wms/Wms/Controllers/PdaSoController.cs 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Wms/Wms/Controllers/UpApiController.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Pda/View/AsnSetting/WorkshopIn.html
@@ -0,0 +1,571 @@
<!DOCTYPE html>
<html>
<head>
    <meta name="viewport" content="user-scalable=0,width=device-width,initial-scale=1.0" />
    <meta charset="UTF-8" />
    <!-- <meta name="viewport" content="width=device-width, initial-scale=0.665, minimum-scale=0.5, maximum-scale=1, user-scalable=no" /> -->
    <!-- <meta name="viewport" content="width=device-width, initial-scale=0.665" /> -->
    <meta http-equiv="X-UA-Compatible" content="ie=edge" />
    <title>Boxline PDA</title>
    <link rel="stylesheet" href="/layui/css/layui.css" />
    <link rel="stylesheet" href="/css/style.css" />
    <script src="/js/adaptive.js"></script>
    <link rel="stylesheet" href="/css/my.css" />
    <style type="text/css">
        td {
            word-break: break-all;
            word-wrap: break-word;
        }
        .layui-form-switch {
            margin-top: 0;
        }
        /* 标签样式 */
        .tableyang-this a {
            margin: 10px 10px 0px 0px;
            line-height: 30px;
            width: 100px;
            color: #999;
            text-align: center;
            float: left;
            background: #f7f7f7;
            user-select: none;
            position: relative;
            z-index: 1;
            cursor: pointer;
            border-radius: 5px;
            border: 1px solid #ccc;
            transition: all 0.3s ease;
        }
        .tableyang-this a.hover {
            color: #5298ff;
            background-color: #eff2ff;
            border: 1px solid #5298ff;
        }
        /* 内容居中 */
        .tableyang-tab {
            display: flex;
            /* justify-content: center; */
            /* align-items: center; */
            flex-direction: column;
            height: 90vh;
        }
        /* 必用样式 */
        .tableyang-2,
        .tableyang-3 {
            display: none;
        }
        ul {
            list-style-type: none;
            padding: 0;
        }
        li {
            cursor: pointer;
            background-color: lightgray;
            padding: 10px;
            margin-bottom: 5px;
        }
    </style>
    <link rel="stylesheet" href="/css/adapter.css" />
    <script src="../../js/jquery.js"></script>
    <script src="../../js/jquery-3.5.1.min.js"></script>
</head>
<body>
    <div id="" class="main-content">
        <div id="" class="layout-title">
            <table border="" cellspacing="" cellpadding="">
                <tr>
                    <td class="img-back"><a href="../index.html"><img src="/assets/back.jpg"></a></td>
                    <td class="title-text" lang>车间入库</td>
                    <td class="title-menu-icon"><img id="menuImg" src="/assets/menu.jpg"></td>
                </tr>
            </table>
        </div>
        <div id="" class="layout-sub-content">
            <div id="menuList" class="menu">
                <ul class="" style="text-align: center;">
                    <li><a href="../index.html" lang>主页</a></li>
                    <!-- <li><a href="productEnterConfirm.html">入库信息确认</a></li> -->
                    <li><a href="../login.html" lang>重新登录</a></li>
                </ul>
            </div>
            <button id="option1" class="layout-btn" type="button">标签</button>
            <button id="option2" class="layout-btn" type="button">数量</button>
            <br /><br />
            <!-- 有码 -->
            <div id="content1">
                <div id="zongDiv" class="layout-bill-info" style="height: 285px;">
                    <form class="layui-form" action="">
                        <div id="" class="layui-form-item layout-input">
                            <label class="layui-form-label" lang>托盘条码:</label>
                            <div class="layui-input-block">
                                <input id="PalletNo" type="text" lay-verify="stock" lang langholder
                                    placeholder="请扫描托盘条码" autocomplete="off" class="layui-input">
                            </div>
                        </div>
                        <div id="BOX" class="layui-form-item layout-input">
                            <label class="layui-form-label" lang>外箱条码:</label>
                            <div class="layui-input-block">
                                <input id="BoxCode" type="text" lay-verify="required" lang langholder
                                    placeholder="请扫描外箱条码" autocomplete="off" class="layui-input">
                            </div>
                        </div>
                        <div id="" class="layui-form-item layout-input">
                           <label class="layui-form-label" lang>数量:</label>
                            <div class="layui-input-block">
                                <input id="BoxNum" type="number" lay-verify="required" lang langholder
                                    placeholder="请输入数量" autocomplete="off" class="layui-input"
                                    oninput="value=value.replace(/^(0+)|[^\d]+/g,'')">
                            </div>
                        </div>
                        <div id="" class="layui-form-item layout-dropdownlist">
                            <label class="layui-form-label" lang>车间:</label>
                            <div class="layui-input-block" id="selectAreaDiv">
                                <select id="area" lay-filter="getarea" lay-search>
                                    <option value="B06">1002</option>
                                    <option value="B09">1003一楼</option>
                                    <option value="B07">1003二楼</option>
                                </select>
                                <img src="/assets/down_arraw.png">
                            </div>
                        </div>
                        <table class="layout-tbl-input" border="" cellspacing="" cellpadding="">
                            <tr>
                                <td>
                                    <div id="" class="layui-form-item layout-boxinfo">
                                        <label class="layui-form-label" lang>批次:</label>
                                        <div class="layui-input-block">
                                            <input id="LotNo" type="text" disabled placeholder="" autocomplete="off"
                                                class="layui-input">
                                        </div>
                                    </div>
                                </td>
                                <td>
                                    <div id="" class="layui-form-item layout-boxinfo">
                                        <label class="layui-form-label" lang>物料名称:</label>
                                        <div class="layui-input-block">
                                            <input id="SkuName" type="text" disabled placeholder="" autocomplete="off"
                                                class="layui-input">
                                        </div>
                                    </div>
                                </td>
                            </tr>
                        </table>
                        <table class="layout-tbl-submit" border="" cellspacing="" cellpadding="">
                            <tr>
                                <td style="width: 23%;"></td>
                                <td>
                                    <button class="layout-btn layout-btn-red" lang type="button" lay-submit
                                        lay-filter="formBind">绑定到托盘</button>
                                </td>
                                <td style="width: 33%;"></td>
                            </tr>
                        </table>
                    </form>
                </div>
            </div>
            <!-- 无码 -->
            <div id="content2">
                <div id="zongDiv2" class="layout-bill-info" style="height: 255px;">
                    <form class="layui-form" id="form2" action="">
                       <div id="" class="layui-form-item layout-input">
                            <label class="layui-form-label" lang>物料编码:</label>
                            <div class="layui-input-block">
                                <input id="SkuNo" type="text" lay-verify="stock" lang langholder
                                    placeholder="请输入物料编码" autocomplete="off" class="layui-input">
                            </div>
                        </div><div id="" class="layui-form-item layout-input">
                            <label class="layui-form-label" lang>批次号:</label>
                            <div class="layui-input-block">
                                <input id="LotNo2" type="text" lay-verify="stock" lang langholder
                                    placeholder="请输入批次" autocomplete="off" class="layui-input">
                            </div>
                        </div>
                        <div id="" class="layui-form-item layout-input">
                            <label class="layui-form-label" lang>托盘条码:</label>
                            <div class="layui-input-block">
                                <input id="PalletNo2" type="text" lay-verify="stock" lang langholder
                                    placeholder="请扫描托盘条码" autocomplete="off" class="layui-input">
                            </div>
                        </div>
                        <div id="" class="layui-form-item layout-input">
                            <label class="layui-form-label" lang>物料数量:</label>
                            <div class="layui-input-block">
                                <input id="SkuQty2" type="number" lay-verify="stock" lang langholder
                                    placeholder="请输入物料数量" autocomplete="off" class="layui-input"
                                    oninput="value=value.replace(/^(0+)|[^\d]+/g,'')">
                            </div>
                        </div>
                        <div id="" class="layui-form-item layout-dropdownlist">
                            <label class="layui-form-label" lang>车间:</label>
                            <div class="layui-input-block" id="selectAreaDiv2">
                                <select id="area2" lay-filter="getarea2" lay-search>
                                    <option value="B06">1002</option>
                                    <option value="B09">1003一楼</option>
                                    <option value="B07">1003二楼</option>
                                </select>
                                <img src="/assets/down_arraw.png">
                            </div>
                        </div>
                        <table class="layout-tbl-submit" border="" cellspacing="" cellpadding="">
                            <tr>
                                <td style="width: 23%;"></td>
                                <td>
                                    <button class="layout-btn layout-btn-red" lang type="button" lay-submit
                                        lay-filter="formBind">绑定到托盘</button>
                                </td>
                                <td style="width: 33%;"></td>
                            </tr>
                        </table>
                    </form>
                </div>
                <br>
                <br>
                <div id="demodiv1">
                    <br><br><br><br><br><br><br>
                </div>
                <!-- <div id="" class="cut-line">
                    <img src="/assets/fengexian.png">
                </div> -->
                <!-- <div class="layout-tbl-paging" id="">
                    <table id="tableBoxList1" class="tbl-box-list" border="" cellspacing="" cellpadding="">
                        <tr>
                            <th lang style="width: 15%;">物料编码</th>
                            <th lang style="width: 35%;">物料名称</th>
                            <th lang style="width: 25%;">批次</th>
                            <th lang style="width: 15%;">物料数量</th>
                            <th lang style="width: 10%;">操作</th>
                        </tr>
                        <tr id="boxCell" style="display: none;">
                            <td name="code">AG000001</td>
                            <td name="name">疫苗名称名称名称</td>
                            <td name="lotNo">批次号</td>
                            <td name="num">30</td>
                            <td name="del">
                                <div id="" class="tbl-btn-del" lang>
                                    删除
                                </div>
                            </td>
                        </tr>
                    </table>
                    <table id="tableBoxPages1" class="tbl-box-pages" border="" cellspacing="" cellpadding="">
                        <tr>
                            <td class="page-prev">上一页</td>
                            <td class="page-num page-num-select">1</td>
                            <td class="page-num">2</td>
                            <td class="page-num">3</td>
                            <td class="page-num">4</td>
                            <td class="page-num">5</td>
                            <td class="page-next">下一页</td>
                        </tr>
                    </table>
                </div> -->
            </div>
        </div>
    </div>
    <script src="/js/jquery-3.5.1.min.js"></script>
    <script src="/layui/layui.js"></script>
    <script src="/js/public.js"></script>
    <script src="/js/language.js"></script>
    <script src="/js/jquery.cookie.js"></script>
    <script>
        layui.use(['form', 'jquery'], function () {
            var form = layui.form
            /* 标签切换代码 */
            $('#demodiv').hide();
            $('#demodiv1').hide();
            var xianshiyemian = 0;
            $('#option1').attr("style", "background-color: red;width: 50%;float: left;text-align: center;"); //选中后颜色
            $('#option2').attr("style", "background-color: #999;width: 50%;float: right;text-align: center;"); //默认颜色
            $('#content2').hide();
            $(document).ready(function () {
                $('#option1').click(function () {
                    // qingkong();
                    xianshiyemian = 0;
                    $('#content1').show();
                    $('#option1').attr("style", "background-color: red;width: 50%;float: left;text-align: center;"); //选中后颜色
                    $('#content2').hide();
                    $('#option2').attr("style", "background-color: #999;width: 50%;float: right;text-align: center;"); //默认颜色
                });
                $('#option2').click(function () {
                    // qingkong();
                    xianshiyemian = 1;
                    $('#content1').hide();
                    $('#option1').attr("style", "background-color: #999;width: 50%;float: left;text-align: center;"); //默认颜色
                    $('#content2').show();
                    $('#option2').attr("style", "background-color: red;width: 50%;float: right;text-align: center;"); //选中后颜色
                });
            });
            /*——————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————*/
            initLanguage()
            setLanguage()
            //是否连续组托
            isContinue = "0";
            // 托盘码文本改变时触发
            $("#PalletNo").on('input', function () {
                if ($("#PalletNo").val() == "" || $("#PalletNo").val().length < 8) {
                    return;
                }
                if ($("#PalletNo").val().length >= 8) {
                    $("#PalletNo").val($("#PalletNo").val().substr(-8))
                }
                checkPalletStat()
            })
            // 托盘码文本改变时触发-数量
            $("#PalletNo1").on('input', function () {
                if ($("#PalletNo1").val() == "" || $("#PalletNo1").val().length < 8) {
                    return;
                }
                if ($("#PalletNo1").val().length >= 8) {
                    $("#PalletNo1").val($("#PalletNo1").val().substr(-8))
                }
                checkPalletStat()
            })
            // 判断托盘码是否可用
            function checkPalletStat() {
                if (xianshiyemian == 0) {
                    var param = {
                        "PalletNo": $("#PalletNo").val()
                    }
                    sendData(IP + "/PdaAsn/IsEnablePalletNo", param, 'post', function (res) {
                        if (res.code == 0) {
                            $("#BoxCode").focus();
                        } else {
                            layer.msg(res.msg, {
                                icon: 2,
                                time: 2000 //2秒关闭(如果不配置,默认是3秒)
                            }, function () { });
                        }
                    });
                }
                else if (xianshiyemian == 1) {
                    var param = {
                        "PalletNo": $("#PalletNo1").val()
                    }
                    sendData(IP + "/PdaAsn/IsEnablePalletNo", param, 'post', function (res) {
                        if (res.code == 0) {
                            $("#SkuQty").focus();
                        } else {
                            layer.msg(res.msg, {
                                icon: 2,
                                time: 2000 //2秒关闭(如果不配置,默认是3秒)
                            }, function () { });
                        }
                    });
                }
            }
            //箱码回车事件
            $("#BoxCode").keydown(function (e) {
                if (e.keyCode === 13) {
                    if ($("#BoxCode").val() == "") {
                        layer.msg('请先扫描箱码', {
                            icon: 2,
                            time: 2000 //2秒关闭(如果不配置,默认是3秒)
                        });
                        return
                    }
                    checkBoxInfo()
                }
            });
            //箱回车事件
            function checkBoxInfo() {
                var param = {
                    "BoxNo": $("#BoxCode").val(),
                }
                sendData(IP + "/PdaAsn/GetWmsBoxInfos", param, 'post', function (res) {
                    if (res.code == 0) { //成功
                        $("#BoxNum").val(res.data[0].Qty);
                        $("#SkuName").val(res.data[0].SkuName);
                        $("#LotNo").val(res.data[0].LotNo);
                    } else { //不成功
                        layer.msg(res.msg, {
                                icon: 2,
                                time: 2000 //2秒关闭(如果不配置,默认是3秒)
                            });
                    }
                });
            }
            //绑定到托盘事件
            form.on('submit(formBind)', function (data) {
                if (xianshiyemian == 0) {
                    if ($("#PalletNo").val() == "") {
                        layer.msg('请扫描托盘条码', {
                            icon: 2,
                            time: 2000 //2秒关闭(如果不配置,默认是3秒)
                        });
                        return;
                    }
                    if ($("#BoxCode").val() == "") {
                        layer.msg('请扫描外箱条码', {
                            icon: 2,
                            time: 2000 //2秒关闭(如果不配置,默认是3秒)
                        });
                        return;
                    }
                    var param = {
                        PalletNo: $("#PalletNo").val(),
                        BoxNo: $("#BoxCode").val(),
                        SkuQty: parseFloat($("#BoxNum").val()), //物料数量
                        AreaNo:$("#area").val(),
                        TableType: xianshiyemian,
                    }
                    console.log(param)
                    //组盘
                    sendData(IP + "/PdaAsn/ChejianIn", param, 'post', function (res) {
                        if (res.code == 0) { //成功
                            layer.msg(res.msg, {
                                icon: 1,
                                time: 1000 //2秒关闭(如果不配置,默认是3秒)
                            }, function () {
                                $("#BoxCode").val("");
                                $("#BoxNum").val("");
                                $("#SkuName").val("");
                                $("#LotNo").val("");
                            });
                        } else { //不成功
                            layer.msg(res.msg, {
                                icon: 2,
                                time: 2000 //2秒关闭(如果不配置,默认是3秒)
                            }, function () {
                                //回调
                            });
                        }
                    });
                }
                else if (xianshiyemian == 1) {
                    if ($("#bar1").val() == "") {
                        layer.msg('请选择入库单', {
                            icon: 2,
                            time: 2000 //2秒关闭(如果不配置,默认是3秒)
                        });
                        return;
                    }
                    if ($("#SkuNo").val() == "") {
                        layer.msg('请输入物料', {
                            icon: 2,
                            time: 2000 //2秒关闭(如果不配置,默认是3秒)
                        });
                        return;
                    }
                    if ($("#PalletNo2").val() == "") {
                        layer.msg('请扫描托盘条码', {
                            icon: 2,
                            time: 2000 //2秒关闭(如果不配置,默认是3秒)
                        });
                        return;
                    }
                     var param = {
                        PalletNo: $("#PalletNo2").val(),
                        SkuNo: $("#SkuNo").val(),
                        LotNo: $("#LotNo2").val(),
                        SkuQty: parseFloat($("#SkuQty2").val()), //物料数量
                        AreaNo:$("#area").val(),
                        TableType: xianshiyemian,
                    }
                    console.log(param)
                    //组盘
                    sendData(IP + "/PdaAsn/ChejianIn", param, 'post', function (res) {
                        if (res.code == 0) { //成功
                            layer.msg(res.msg, {
                                icon: 1,
                                time: 1000 //2秒关闭(如果不配置,默认是3秒)
                            }, function () {
                                $("#PalletNo2").val("");
                                $("#SkuNo").val("");
                                $("#SkuQty2").val("");
                                $("#LotNo2").val("");
                            });
                        } else { //不成功
                            layer.msg(res.msg, {
                                icon: 2,
                                time: 2000 //2秒关闭(如果不配置,默认是3秒)
                            }, function () {
                                //回调
                            });
                        }
                    });
                }
                return false; //阻止表单跳转。如果需要表单跳转,去掉这段即可。
            });
            /*——————————————————————————————————————————————————————————*/
            $("#menuImg").click(function (e) {
                e.stopPropagation()
                if ($("#menuList").is(":hidden")) {
                    $("#menuList").show()
                } else {
                    $("#menuList").hide()
                }
            })
            $('body').click(function () {
                $("#menuList").hide()
            })
        })
    </script>
</body>
</html>
Pda/View/SoSetting/ExNoticeOut.html
@@ -147,13 +147,22 @@
            //选中单据事件
            form.on('select(getbar)', function (data) {
                $("#PalletNo").empty()
                $("#PalletNo").append('<option value =>' + '</option>');
                form.render('select');
                if (data.value == "") {
                    return;
                }
                updateGoodList();
            });
            //选中单据明细事件
            form.on('select(goodSelect)', function (data) {
                $("#PalletNo").empty()
                $("#PalletNo").append('<option value =>' + '</option>');
                form.render('select');
            });
            $("#selectDiv").click(function () {
                var input = $('select[id="bar"]').next().find('.layui-select-title input')
                var val = input.val()
@@ -163,6 +172,17 @@
                    $('select[id="bar"]').next().find('.layui-select-title input').val(val)
                })
            })
            $("#selectPalletNo").click(function () {
                var input = $('select[id="PalletNo"]').next().find('.layui-select-title input')
                var val = input.val()
                //先更新一下出库单
                updatePalletNoList(function (data) {
                    $('select[id="PalletNo"]').next().addClass('layui-form-selected')
                    $('select[id="PalletNo"]').next().find('.layui-select-title input').val(val)
                })
            })
            //初始化渲染 出库单
            function updateBillList(callback) {
                var input = $('select[id="bar"]').next().find('.layui-select-title input')
@@ -271,9 +291,10 @@
                form.render('select');
                var param = {
                    soNo:$("#bar").val()
                    SoNo:$("#bar").val(),
                    SoDetailId:$("#goodSelect").val(),
                };
                sendData(IP + "/PdaCr/GetPalletNoListBySoNo", param, 'get', function (res) {
                sendData(IP + "/PdaSo/GetPalletListBySo", param, 'post', function (res) {
                    if (res.code == 0) { //成功
                        for (var i = 0; i < res.data.length; i++) {
                            $("#PalletNo").append('<option value =' + res.data[i] + '>' + res.data[i]+
Wms/Model/ModelVm/PdaVm/PdaAsnVm.cs
@@ -24,7 +24,8 @@
        /// Desc:外箱条码
        /// </summary>           
        public string BoxNo { get; set; }
        public string SkuNo { get; set; }
        /// <summary>
        /// Desc:是否连续组托
        /// </summary>           
@@ -100,6 +101,11 @@
        /// </summary>
        public string BoxLevel { get; set; }
        /// <summary>
        /// 车间区域 1002 1003一楼  1003二楼
        /// </summary>
        public string AreaNo { get; set; }
    }
}
Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs
@@ -2409,6 +2409,458 @@
            }
        }
        /// <summary>
        /// 根据箱码获取标签箱码信息(车间入库-获取WMS生成的箱信息)
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public List<BoxInfoDto> GetWmsBoxInfos(string boxNo)
        {
            try
            {
                if (string.IsNullOrEmpty(boxNo))
                {
                    throw new Exception("请扫描外箱条码!");
                }
                string sqlString = $@"SELECT BoxNo, SkuNo, SkuName, LotNo, BitBoxMark, SUM(Qty) as Qty  FROM BllBoxInfo
                                        WHERE IsDel = '0' and Status='0' and BoxNo = '{boxNo}'
                                        GROUP BY BoxNo,SkuNo,SkuName,LotNo,BitBoxMark; ";
                var models = Db.Ado.SqlQuery<BoxInfoDto>(sqlString);
                if (models.Count != 0)
                {
                    return models;
                }
                else
                {
                    throw new Exception("没有查询到箱码信息");
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
        public void ChejianIn(string palletNo,string boxNo,decimal qty,string areaNo,int userId)
        {
            try
            {
                #region MyRegion
                if (string.IsNullOrWhiteSpace(palletNo))
                {
                    throw new Exception("托盘号不能为空");
                }
                if (string.IsNullOrWhiteSpace(boxNo))
                {
                    throw new Exception("箱号不能为空");
                }
                if (qty<=0)
                {
                    throw new Exception("数量不能小等0");
                }
                var boxInfo = Db.Queryable<BllBoxInfo>().Where(m => m.IsDel == "0" && m.BoxNo == boxNo).ToList();
                if (boxInfo.Count == 0)
                {
                    throw new Exception("未查询到当前箱号信息");
                }
                var boxInfoOne = boxInfo.First();
                var pall = Db.Queryable<SysPallets>().First(m => m.IsDel == "0" && m.PalletNo == palletNo);
                if (pall == null)
                {
                    throw new Exception("未查询到当前托盘信息");
                }
                #endregion
                //开启事务
                Db.BeginTran();
                //当前时间
                var comTime = DateTime.Now;
                #region 包装
                var sku = Db.Queryable<SysMaterials>().First(m => m.IsDel == "0" && m.SkuNo == boxInfoOne.SkuNo);
                var pack = Db.Queryable<SysPackag>().First(m => m.IsDel == "0" && m.PackagNo == sku.PackagNo);
                var pNum = 0;//托盘物品数量
                var bNum = 0;//箱码物品数量
                //公共方法获取包装数量
                new Common().GetPackQtyInfo(pack.PackagNo, ref pNum, ref bNum);
                #endregion
                var msgStr = $"箱号为{boxNo}";
                var boxInfoList = new List<BllBoxInfo>();
                boxInfoList.AddRange(boxInfo);
                #region 库存明细
                var area = Db.Queryable<SysStorageArea>().First(m => m.IsDel == "0" && m.AreaNo == areaNo);
                if (area == null)
                {
                    throw new Exception("入库区域不能为空");
                }
                var tags = "0";
                // 判断库存明细是否已有此托盘信息
                var sd1 = Db.Queryable<DataStockDetail>().First(m => m.IsDel == "0" && m.SkuNo== boxInfoOne.SkuNo && m.LotNo == boxInfoOne.LotNo && m.PalletNo == palletNo);
                var sdId1 = 0;
                if (sd1 != null)
                {
                    if (sd1.AreaNo!= areaNo)
                    {
                        throw new Exception("选择的区域与库存不同");
                    }
                    sdId1 = sd1.Id;
                    // 库存已存在 更新数据
                    sd1.Qty += qty;
                    sd1.CompleteTime = comTime;
                    sd1.UpdateUser = userId;
                    sd1.UpdateTime = comTime;
                    Db.Updateable(sd1).ExecuteCommand();
                }
                else
                {
                    // 库存不存在 插入数据
                    sd1 = new DataStockDetail()
                    {
                        LotNo = boxInfoOne.LotNo,
                        LotText = boxInfoOne.LotText,
                        SupplierLot = boxInfoOne.SupplierLot,
                        SkuNo = sku.SkuNo,
                        SkuName = sku.SkuName,
                        Standard = sku.Standard,
                        Qty = qty,
                        LockQty = 0,
                        FrozenQty = 0,
                        InspectQty = 0,
                        WareHouseNo = area.WareHouseNo,//所属仓库
                        RoadwayNo = "",//所属巷道
                        AreaNo = area.AreaNo,//所属区域
                        LocatNo = "",//储位地址
                        PalletNo = palletNo,
                        PalletTags = tags,
                        CompleteTime = comTime,
                        ProductionTime = boxInfoOne.ProductionTime,
                        ExpirationTime = boxInfoOne.ExpirationTime,
                        Status = "0",
                        InspectMark = boxInfoOne.InspectMark,
                        InspectStatus = sku.IsInspect,
                        BitPalletMark = "1",
                        PackagNo = sku.PackagNo,
                        IsDel = "0",
                        CreateUser = 0,
                        CreateTime = comTime
                    };
                    //添加库存明细
                    sdId1 = Db.Insertable(sd1).ExecuteReturnIdentity();
                }
                #endregion
                // 更改箱支关系表
                decimal factQty = 0.00m;//托盘总数量
                //标签组托
                var boxGroup = boxInfo.GroupBy(m => m.BoxNo).ToList();
                foreach (var g in boxGroup)
                {
                    decimal boxFullQty = 0;//箱内总数量
                    foreach (var box in g)
                    {
                        if (box.BindNo != null && box.BindNo != 0)
                        {
                            continue;
                        }
                        box.PalletNo = palletNo;
                        box.Status = "2";
                        box.CompleteTime = comTime;
                        box.UpdateTime = comTime;
                        box.UpdateUser = userId;
                        //box.Qty = box.Qty;
                        //box.BitBoxMark = box.Qty == box.FullQty ? "0" : "1";
                        factQty += box.Qty;
                        boxFullQty += box.Qty;
                        #region 库存箱码明细
                        var box2 = new DataBoxInfo()
                        {
                            StockDetailId = sdId1,
                            BoxNo = box.BoxNo,
                            BoxNo2 = box.BoxNo2,
                            BoxNo3 = box.BoxNo3,
                            PalletNo = box.PalletNo,
                            PalletNo2 = box.PalletNo2,
                            PalletNo3 = box.PalletNo3,
                            Qty = box.Qty,
                            FullQty = box.FullQty,
                            Status = "2",//0:未组托  1:已组托 2:已入库 3:已出库 4:已分配 5:已拣货
                            LotNo = box.LotNo,
                            LotText = box.LotText,
                            SkuNo = box.SkuNo,
                            SkuName = box.SkuName,
                            Standard = sku.Standard,
                            ProductionTime = box.ProductionTime,
                            SupplierLot = box.SupplierLot,
                            InspectStatus = sku.IsInspect,
                            InspectMark = box.InspectMark,
                            BitBoxMark = box.BitBoxMark,
                            ExpirationTime = box.ExpirationTime,
                            CreateUser = 0,
                            CreateTime = comTime
                        };
                        //添加库存箱码明细
                        Db.Insertable(box2).ExecuteCommand();
                        #endregion
                    }
                    if (boxFullQty > bNum)
                    {
                        throw new Exception($"绑定失败,{g.Key}箱码绑定数量大于该物品包装数量!");
                    }
                }
                //更改箱支关系表信息
                Db.Updateable(boxInfoList).ExecuteCommand();
                #region 库存
                var dataStock = Db.Queryable<DataStock>().First(m => m.IsDel == "0" && m.SkuNo == sku.SkuNo && m.LotNo == boxInfoOne.LotNo);
                if (dataStock != null)
                {
                    dataStock.Qty += factQty;
                    Db.Updateable(dataStock).ExecuteCommand();
                }
                else
                {
                    var stock = new DataStock()
                    {
                        SkuNo = sku.SkuNo,
                        SkuName = sku.SkuName,
                        Standard = sku.Standard,
                        LotNo = boxInfoOne.LotNo,
                        LotText = boxInfoOne.LotText,
                        Qty = qty,
                        LockQty = 0,
                        FrozenQty = 0,
                        IsSampling = "0",
                        IsDel = "0",
                        CreateUser = userId,
                        CreateTime = comTime
                    };
                    Db.Insertable(stock).ExecuteCommand();
                }
                #endregion
                // 更改托盘使用状态
                var sqlStr = $"update SysPallets set Status = '1' where PalletNo = '{palletNo}';";
                ////添加托盘记录表数据
                //sqlStr += $"insert into LogPalletTrack values('{palletNo}','{boxNo}','组盘','0',getDate(),{userId},NULL,NULL);";
                //Db.Ado.ExecuteCommand(sqlStr);
                new OperationASNServer().AddLogOperationAsn("PDA模块", "车间入库", boxNo, "添加", $"添加了托盘码为:{palletNo}、{msgStr}的入库信息", userId);
                //提交事务
                Db.CommitTran();
            }
            catch (Exception e)
            {
                Db.RollbackTran();
                throw new Exception(e.Message);
            }
        }
        /// <summary>
        /// 车间绑定托盘 不贴标物料
        /// </summary>
        /// <param name="model"></param>
        /// <param name="userId"></param>
        /// <exception cref="Exception"></exception>
        public void ChejianQtyIn(string palletNo, string skuNo, string lotNo, decimal qty, string areaNo, int userId)
        {
            try
            {
                #region MyRegion
                if (string.IsNullOrWhiteSpace(palletNo))
                {
                    throw new Exception("托盘号不能为空");
                }
                if (string.IsNullOrWhiteSpace(skuNo))
                {
                    throw new Exception("物料不能为空");
                }
                if (qty <= 0)
                {
                    throw new Exception("数量不能小等0");
                }
                var skuInfo = Db.Queryable<SysMaterials>().First(m => m.IsDel == "0" && m.SkuNo == skuNo);
                if (skuInfo == null)
                {
                    throw new Exception("未查询到物料信息");
                }
                var pall = Db.Queryable<SysPallets>().First(m => m.IsDel == "0" && m.PalletNo == palletNo);
                if (pall == null)
                {
                    throw new Exception("未查询到当前托盘信息");
                }
                #endregion
                //开启事务
                Db.BeginTran();
                //当前时间
                var comTime = DateTime.Now;
                #region 包装
                var pack = Db.Queryable<SysPackag>().First(m => m.IsDel == "0" && m.PackagNo == skuInfo.PackagNo);
                var pNum = 0;//托盘物品数量
                var bNum = 0;//箱码物品数量
                //公共方法获取包装数量
                new Common().GetPackQtyInfo(pack.PackagNo, ref pNum, ref bNum);
                #endregion
                #region 库存明细
                var area = Db.Queryable<SysStorageArea>().First(m => m.IsDel == "0" && m.AreaNo == areaNo);
                if (area == null)
                {
                    throw new Exception("入库区域不能为空");
                }
                var tags = "0";
                // 判断库存明细是否已有此托盘信息
                var sd1 = Db.Queryable<DataStockDetail>().First(m => m.IsDel == "0" && m.SkuNo == skuNo && m.LotNo == lotNo && m.PalletNo == palletNo);
                var sdId1 = 0;
                if (sd1 != null)
                {
                    if (sd1.AreaNo != areaNo)
                    {
                        throw new Exception("选择的区域与库存不同");
                    }
                    sdId1 = sd1.Id;
                    // 库存已存在 更新数据
                    sd1.Qty += qty;
                    sd1.CompleteTime = comTime;
                    sd1.UpdateUser = userId;
                    sd1.UpdateTime = comTime;
                    if (sd1.Qty >= pNum)
                    {
                        sd1.BitPalletMark = "0";
                    }
                    Db.Updateable(sd1).ExecuteCommand();
                }
                else
                {
                    // 库存不存在 插入数据
                    sd1 = new DataStockDetail()
                    {
                        LotNo = lotNo,
                        SupplierLot = "",
                        SkuNo = skuInfo.SkuNo,
                        SkuName = skuInfo.SkuName,
                        Standard = skuInfo.Standard,
                        Qty = qty,
                        LockQty = 0,
                        FrozenQty = 0,
                        InspectQty = 0,
                        WareHouseNo = area.WareHouseNo,//所属仓库
                        RoadwayNo = "",//所属巷道
                        AreaNo = area.AreaNo,//所属区域
                        LocatNo = "",//储位地址
                        PalletNo = palletNo,
                        PalletTags = tags,
                        CompleteTime = comTime,
                        //ProductionTime = boxInfoOne.ProductionTime,
                        //ExpirationTime = boxInfoOne.ExpirationTime,
                        Status = "0",
                        InspectMark = "0",
                        InspectStatus = "1",
                        BitPalletMark = qty >= pNum ?"0" :"1",
                        PackagNo = skuInfo.PackagNo,
                        IsDel = "0",
                        CreateUser = 0,
                        CreateTime = comTime
                    };
                    //添加库存明细
                    sdId1 = Db.Insertable(sd1).ExecuteReturnIdentity();
                }
                #endregion
                // 更改箱支关系表
                decimal factQty = 0.00m;//托盘总数量
                #region 库存
                var dataStock = Db.Queryable<DataStock>().First(m => m.IsDel == "0" && m.SkuNo == skuInfo.SkuNo && m.LotNo == lotNo);
                if (dataStock != null)
                {
                    dataStock.Qty += factQty;
                    Db.Updateable(dataStock).ExecuteCommand();
                }
                else
                {
                    var stock = new DataStock()
                    {
                        SkuNo = skuInfo.SkuNo,
                        SkuName = skuInfo.SkuName,
                        Standard = skuInfo.Standard,
                        LotNo = lotNo,
                        LotText = "",
                        Qty = qty,
                        LockQty = 0,
                        FrozenQty = 0,
                        IsSampling = "0",
                        IsDel = "0",
                        CreateUser = userId,
                        CreateTime = comTime
                    };
                    Db.Insertable(stock).ExecuteCommand();
                }
                #endregion
                // 更改托盘使用状态
                var sqlStr = $"update SysPallets set Status = '1' where PalletNo = '{palletNo}';";
                ////添加托盘记录表数据
                //sqlStr += $"insert into LogPalletTrack values('{palletNo}','{boxNo}','组盘','0',getDate(),{userId},NULL,NULL);";
                Db.Ado.ExecuteCommand(sqlStr);
                new OperationASNServer().AddLogOperationAsn("PDA模块", "车间入库", skuNo, "添加", $"添加了托盘码为:{palletNo}的入库信息", userId);
                //提交事务
                Db.CommitTran();
            }
            catch (Exception e)
            {
                Db.RollbackTran();
                throw new Exception(e.Message);
            }
        }
        #endregion
Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs
@@ -124,7 +124,7 @@
                 
                if (pinStockDetail != null) 
                {
                    if (palletNo != palletNoNew)//非整托拣货
                    if (palletNo != palletNoNew)//非整托拣货
                    {
                        var pinStockDetails = Db.Queryable<DataStockDetail>().Where(m => m.IsDel == "0" && m.PalletNo == palletNoNew && m.Id!= pinStockDetail.Id).ToList();
                        if (pinStockDetails.Count(m=>m.SONo != notice.SONo) > 0)
@@ -142,15 +142,19 @@
                    var newPalletInfo = await Db.Queryable<SysPallets>().FirstAsync(m => m.IsDel == "0" && m.PalletNo == palletNoNew && m.Status == "0");
                    if (newPalletInfo == null)
                    {
                        var pinStockDetails = Db.Queryable<DataStockDetail>().Where(m => m.IsDel == "0" && m.PalletNo == palletNoNew && m.Id != pinStockDetail.Id).ToList();
                        var pinStockDetails = Db.Queryable<DataStockDetail>().Where(m => m.IsDel == "0" && m.PalletNo == palletNoNew &&(m.SkuNo != stockDetail.SkuNo || m.LotNo != stockDetail.LotNo)).ToList();
                        if (pinStockDetails.Count(m => m.SONo != notice.SONo) > 0)
                        {
                            throw Oops.Bah("新托盘信息不存在或已被使用!");
                        }
                        }
                    }
                    //修改新托盘状态
                    newPalletInfo.Status = "1";
                    await Db.Updateable(newPalletInfo).ExecuteCommandAsync();
                    else
                    {
                        //修改新托盘状态
                        newPalletInfo.Status = "1";
                        await Db.Updateable(newPalletInfo).ExecuteCommandAsync();
                    }
                }
                
                var sd = new DataStockDetail();
@@ -458,9 +462,10 @@
                if (isNew)
                {
                    sd.Qty = pickQty;
                    sd.LockQty = pickQty;
                    await Db.Updateable(sd).ExecuteCommandAsync();
                    var sdnew = Db.Queryable<DataStockDetail>().First(m => m.Id == sdId);
                    sdnew.Qty = pickQty;
                    sdnew.LockQty = pickQty;
                    await Db.Updateable(sdnew).ExecuteCommandAsync();
                }
                else
                {
@@ -588,15 +593,18 @@
                    var newPalletInfo = await Db.Queryable<SysPallets>().FirstAsync(m => m.IsDel == "0" && m.PalletNo == palletNoNew && m.Status == "0");
                    if (newPalletInfo == null)
                    {
                        var pinStockDetails = Db.Queryable<DataStockDetail>().Where(m => m.IsDel == "0" && m.PalletNo == palletNoNew && m.Id != pinStockDetail.Id).ToList();
                        var pinStockDetails = Db.Queryable<DataStockDetail>().Where(m => m.IsDel == "0" && m.PalletNo == palletNoNew && (m.SkuNo != stockDetail.SkuNo && m.LotNo != stockDetail.LotNo)).ToList();
                        if (pinStockDetails.Count(m => m.SONo != notice.SONo) > 0)
                        {
                            throw Oops.Bah("新托盘信息不存在或已被使用!");
                        }
                    }
                    //修改新托盘状态
                    newPalletInfo.Status = "1";
                    await Db.Updateable(newPalletInfo).ExecuteCommandAsync();
                    else
                    {
                        //修改新托盘状态
                        newPalletInfo.Status = "1";
                        await Db.Updateable(newPalletInfo).ExecuteCommandAsync();
                    }
                }
                if (isNew)
@@ -1522,6 +1530,27 @@
            return allotList2;
        }
        //获取托盘中含有的执行中的单据
        public async Task<List<string>> GetPalletListBySo(string soNo, string soDetailId)
        {
            if (string.IsNullOrWhiteSpace(soNo))//判断托盘是否为空
            {
                throw Oops.Bah("出库单为空,请选择出库单");
            }
            if (string.IsNullOrWhiteSpace(soDetailId))
            {
                throw Oops.Bah("出库明细为空,请选择物料-批次");
            }
            var allotList = await Db.Queryable<BllExportAllot>().Where(m => m.IsDel == "0" && m.Status == "0" && m.SONo == soNo && m.SODetailNo == int.Parse(soDetailId)).Select(m => m.PalletNo).Distinct().Where(m => !string.IsNullOrWhiteSpace(m)).ToListAsync();
            return allotList;
        }
        //获取托盘中含有的执行中的单据
        public async Task<List<string>> GetRunNoticeList(string type)
        {
Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs
@@ -1014,7 +1014,7 @@
                    skuList = skuList.Where(m => m.SkuNo == "100088").ToList();
                }
                skuStrList = skuList.Select(m => m.SkuNo).ToList();
                var areaStr = new List<string>() { "B02", "B05", "B08" };
                var areaStr = new List<string>() { "B06", "B07", "B09" };
                var stockRst = new StockServer();
                var stockDetailRst = new StockDetailServer();
                Expression<Func<DataStockDetail, bool>> item = Expressionable.Create<DataStockDetail>()
Wms/WMS.BLL/HttpServer.cs
@@ -1378,7 +1378,7 @@
                    throw new Exception("选择的出库单明细参数错误");
                }
                //所有要出库的出库分配信息(未下发的信息和待拣货的信息)
                var item = Db.Queryable<BllExportAllot>().First(a => a.IsDel == "0" && a.SONo == soNo && a.SODetailNo == intDetailId && a.Status == "0" );
                var item = Db.Queryable<BllExportAllot>().First(a => a.IsDel == "0" && a.SONo == soNo && a.SODetailNo == intDetailId && a.PalletNo == palletNo && a.Status == "0" );
                if (item == null) //判断是否有需要下发的出库流水
                {
                    throw new Exception("当前出库单据无需要下发的托盘");
@@ -1418,8 +1418,7 @@
                        var imBl = com.GetImTask(item.PalletNo);
                        if (imBl != null)
                        {
                            str = "要出库的托盘正在入库";
                            return outDto1;
                            throw new Exception("要出库的托盘正在入库");
                        }
                        //判断是否是已经出过库又回库 
                        if (item.Status == "0")
@@ -1445,40 +1444,34 @@
                                    Db.Updateable(notice).ExecuteCommand();
                                }
                            }
                            str = "要出库的托盘已在库外";
                            Db.CommitTran();
                            str = "托盘已在库外";
                            return outDto1;
                        }
                        str = "要出库的托盘正在入库";
                        return outDto1;
                    }
                    var locate = Db.Queryable<SysStorageLocat>().First(m => m.LocatNo == locateNo && m.IsDel == "0");//当前出库的储位信息
                    if (locate == null)
                    {
                        str = "出库的托盘储位信息错误(在储位表中未查询到)";
                        return outDto1;
                        throw new Exception("出库的托盘储位信息错误(在储位表中未查询到)");
                    }
                    //判断储位标志是否为损坏
                    if (locate.Flag == "2")
                    {
                        str = "储位损坏不能出库";
                        return outDto1;
                        throw new Exception("储位损坏不能出库");
                    }
                    if (locate.WareHouseNo != "W02")
                    {
                        str = "托盘不在货架库上";
                        return outDto1;
                        throw new Exception("托盘不在货架库上");
                    }
                    var locateEnd = Db.Queryable<SysStorageLocat>().First(m => m.LocatNo == outModeLocate && m.IsDel == "0");//当前出库的目标储位信息
                    if (locateEnd == null)
                    {
                        str = "出库的托盘储位信息错误(在储位表中未查询到)";
                        return outDto1;
                        throw new Exception("出库的托盘储位信息错误(在储位表中未查询到)");
                    }
                    else if (locateEnd.Status != "0")
                    {
                        str = "目标储位状态不是空储位";
                        return outDto1;
                        throw new Exception("目标储位状态不是空储位");
                    }
                    #endregion
@@ -1606,8 +1599,7 @@
                    }
                    else if (locate.Status == "5") //移出中
                    {
                        str = "当前要出库的储位正在移出";
                        return outDto1;
                        throw new Exception("当前要出库的储位正在移出");
                    }
                    
Wms/WMS.Entity/BllAsnEntity/BllPalletBind.cs
@@ -87,7 +87,7 @@
        public decimal? FullQty {get;set;}
        /// <summary>
        /// Desc:状态
        /// Desc:状态 2入库完成  3上架完成
        /// Default:
        /// Nullable:True
        /// </summary>           
Wms/WMS.IBLL/IPdaServer/IPdaAsnServer.cs
@@ -29,6 +29,12 @@
        /// <param name="userId"></param>
        void SaveAppointLocate(string palletNo, string locateNo, int userId);
        List<BoxInfoDto> GetWmsBoxInfos(string boxNo);
        void ChejianIn(string palletNo, string boxNo, decimal qty,string areaNo, int userId);
        void ChejianQtyIn(string palletNo, string skuNo, string lotNo, decimal qty, string areaNo, int userId);
        #endregion
Wms/WMS.IBLL/IPdaServer/IPdaSoServer.cs
@@ -62,6 +62,14 @@
        Task<List<string>> GetRunNoticeList(string type);
        /// <summary>
        /// 获取出库单未下发出库的托盘
        /// </summary>
        /// <param name="soNo"></param>
        /// <param name="soDetailId"></param>
        /// <returns></returns>
        Task<List<string>> GetPalletListBySo(string soNo, string soDetailId);
        /// <summary>
        /// 获取出库托盘上的物料批次(根据托盘码)
        /// </summary>
        /// <param name="palletNo">托盘码</param>
Wms/Wms/Controllers/PdaAsnController.cs
@@ -193,6 +193,26 @@
        }
        /// <summary>
        /// 根据箱码获取标签箱码信息(车间入库-获取WMS生成的箱信息)
        /// </summary>
        /// <param name="boxNo">BoxNo:箱号</param>
        /// <returns></returns>
        [HttpPost]
        public IActionResult GetWmsBoxInfos(string boxNo)
        {
            try
            {
                var models = _PdaAsnSvc.GetWmsBoxInfos(boxNo);
                return Ok(new { code = 0, msg = "标签箱码信息", data = models });
            }
            catch (Exception e)
            {
                return Ok(new { code = 1, msg = e.Message });
            }
        }
        /// <summary>
        /// 判断托盘是否可用  公用方法
        /// </summary>
        /// <param name="model">PalletNo:托盘条码</param>
@@ -243,6 +263,40 @@
        }
        /// <summary>
        /// 绑定托盘
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        [HttpPost]
        public IActionResult ChejianIn(PdaPalletBindVm model)
        {
            try
            {
                if (_userManager.UserId ==0)
                {
                    throw new Exception("未获取到用户信息");
                }
                if (model.TableType == 0)
                {
                    _PdaAsnSvc.ChejianIn(model.PalletNo,model.BoxNo,model.SkuQty,model.AreaNo, _userManager.UserId);
                }
                else if (model.TableType == 1)
                {
                    _PdaAsnSvc.ChejianQtyIn(model.PalletNo,model.SkuNo,model.LotNo,model.SkuQty,model.AreaNo, _userManager.UserId);
                }
                return Ok(new { code = 0, msg = "绑定成功!" });
            }
            catch (Exception e)
            {
                return Ok(new { code = 1, msg = e.Message });
            }
        }
        //---------------------------------------------申请入库页面----------------------------------------------------------------------
Wms/Wms/Controllers/PdaSoController.cs
@@ -81,6 +81,19 @@
            return await _pdaSoSvc.GetSoSkuLotNoListBySo(model.SoNo);
        }
        /// <summary>
        /// 获取物料-批次信息
        /// </summary>
        /// <param name="model">PalletNo:托盘码、SoNo:单据号</param>
        /// <returns></returns>
        [HttpPost]
        public async Task<List<string>> GetPalletListBySo(PdaSoVm model)
        {
            return await _pdaSoSvc.GetPalletListBySo(model.SoNo,model.SoDetailId);
        }
        /// <summary>
        /// 获取物料-批次信息
        /// </summary>
Wms/Wms/Controllers/UpApiController.cs
@@ -242,7 +242,7 @@
                    await _stockCheckSvc.StockAdjustAuto(model.Id);
                }
                //系统对接后放开
                //var bl =_stockCheckSvc.FinishCr(model.Id,_config.ErpHost + _config.DataChangeUrl, int.Parse(userId));
                var bl =_stockCheckSvc.FinishCr(model.Id,_config.ErpHost + _config.DataChangeUrl, int.Parse(userId));
                //if (bl)
                //{
                return Ok(new { code = 0, count = 0, msg = "盘点单调整上传成功" });