yusijie
2025-12-10 5496663c2c1d5833d91bc4c3d3b654788dc4f352
制造周期报表添加英文字段隐藏;首件检验单内容调整;香囊标签打印
4个文件已修改
1个文件已添加
388 ■■■■■ 已修改文件
WebTM/WebTM.csproj 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/grf/香囊模板JSON.grf 87 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/生产管理/制造周期报表/Sc_ProductionCycleBillList.html 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/质量管理/首件检验单/QC_Add_Edit_FirstPieceCheckBill.html 282 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/车间管理/单品过站_小卫/Cj_SachetBarCodePrint.html 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/WebTM.csproj
@@ -1575,6 +1575,7 @@
    <Content Include="views\grf\箱条码_迦南1.grf" />
    <Content Include="views\grf\物料条码_兴达.grf" />
    <Content Include="views\grf\工序流转卡小标签.grf" />
    <Content Include="views\grf\香囊模板JSON.grf" />
    <None Include="Web.Debug.config">
      <DependentUpon>Web.config</DependentUpon>
    </None>
WebTM/views/grf/ÏãÄÒÄ£°åJSON.grf
New file
@@ -0,0 +1,87 @@
{
    "Version":"6.8.2.5",
    "Font":{
        "Name":"宋体",
        "Size":105000,
        "Weight":400,
        "Charset":134
    },
    "Printer":{
        "Size":256,
        "Width":4.7,
        "Height":2.8,
        "LeftMargin":0,
        "TopMargin":0,
        "RightMargin":0,
        "BottomMargin":0
    },
    "DetailGrid":{
        "CenterView":true,
        "Recordset":{
            "Field":[
                {
                    "Name":"料号"
                },
                {
                    "Name":"物料代码"
                },
                {
                    "Name":"物料名称"
                },
                {
                    "Name":"批号"
                },
                {
                    "Name":"数量"
                },
                {
                    "Name":"供应商"
                },
                {
                    "Name":"源单号"
                },
                {
                    "Name":"条码编号"
                }
            ]
        },
        "Column":[
            {
                "Name":"Column1",
                "Width":4.70958
            }
        ],
        "ColumnContent":{
            "Height":2.59292,
            "ColumnContentCell":[
                {
                    "Column":"Column1",
                    "FreeCell":true,
                    "Control":[
                        {
                            "Type":"Barcode",
                            "Name":"Barcode1",
                            "Left":0.608542,
                            "Top":0.79375,
                            "Width":3.20146,
                            "Height":1.00542,
                            "BarcodeType":"Code128Auto",
                            "Text":"[#条码编号#]"
                        }
                    ]
                }
            ]
        },
        "ColumnTitle":{
            "Height":0,
            "ColumnTitleCell":[
                {
                    "GroupTitle":false,
                    "Column":"Column1",
                    "TextAlign":"MiddleCenter",
                    "Text":"Column1"
                }
            ]
        }
    }
}
WebTM/views/Éú²ú¹ÜÀí/ÖÆÔìÖÜÆÚ±¨±í/Sc_ProductionCycleBillList.html
@@ -644,6 +644,10 @@
                            //给空的数组赋值
                            for (var key in data1.list) {
                                data.push({ "id": data1.list[key].ColmCols, "name": data1.list[key].ColmCols, "Type": data1.list[key].ColmType });
                                var patrn = new RegExp(/^h/i);
                                if (patrn.test(data1.list[key].ColmCols)) {
                                    titleData[key] = data1.list[key].ColmCols;
                                }
                            }
                            //在列表左边添加勾选框
                            col.push({ type: 'checkbox', fixed: 'left' });
WebTM/views/ÖÊÁ¿¹ÜÀí/Ê×¼þ¼ìÑéµ¥/QC_Add_Edit_FirstPieceCheckBill.html
@@ -1712,23 +1712,12 @@
            //#endregion
            //保存
            async function set_SaveBill(data) {
            function set_SaveBill(data) {
                //赋值最后一个选中行的数据给option.data
                //Assignment(LastIndex, LastIndex);
                //保存最后一次点击行的检验值
                set_SaveValue($("#HEntryID").val());
                try {
                    var rownum = $("#HEntryID").val();
                    rowFun = table.cache["mainTable"][rownum].HAnalysisMethod;
                    if (rowFun == "")
                        throw error
                    await set_SaveValue($("#HEntryID").val(), rowFun);
                } catch (error) {
                    layer.msg('用户取消了检验值保存');
                    return;
                }
                if ($("#HICMOQty").val() == "" || $("#HICMOQty").val() <= 0) {
                    layer.msg("任务单数量不能为空且不能小于等于0!", { icon: 5, btn: ['确认'], time: 100000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                    return;
@@ -1835,6 +1824,7 @@
                    }
                });
            }
            //编辑时加载表头
            function RoadBillMain(linterid) {
@@ -3171,9 +3161,9 @@
                var table_value = table.cache['ValueTable'];
                if (OperationType == 3) {
                    set_SaveValue(Number(nowindex) + Number(1), rowFun);
                    set_SaveValue(Number(nowindex) + Number(1));
                } else {
                    set_SaveValue(dataindex + 1, rowFun);
                    set_SaveValue(dataindex + 1);
                }
                //赋值与回显
                if ($("#HSampleSchemeID").val() != "0") {
@@ -4246,144 +4236,144 @@
                set_SaveBill(data);
            });
            //检验值保存 - è¿”回Promise
            function set_SaveValue(dataindex, rowFun) {
                return new Promise((resolve, reject) => {
                    var hasEmptyRow = false;
                    var emptyRowNumbers = [];
            //function set_SaveValue(dataindex, rowFun) {
            //    return new Promise((resolve, reject) => {
            //        var hasEmptyRow = false;
            //        var emptyRowNumbers = [];
                    for (let i = 0; i < table.cache['ValueTable'].length; i++) {
                        var row = table.cache['ValueTable'][i];
                        if (rowFun == 2) {
                            if (
                                (!row.HInSpectValue || row.HInSpectValue === "")) {
                                hasEmptyRow = true;
                                emptyRowNumbers.push(i + 1);
                            }
                        }
                    }
                    if (hasEmptyRow) {
                        var confirmMsg = "检验值表格中存在空行(第 " + emptyRowNumbers.join(", ") + " è¡Œï¼‰ï¼Œæ˜¯å¦ç»§ç»­ä¿å­˜ï¼Ÿ";
                        layer.confirm(confirmMsg, {
                            icon: 3,
                            title: '提示',
                            btn: ['确认保存', '取消保存']
                        }, function (index) {
                            layer.close(index);
                            proceedWithSave(dataindex).then(resolve).catch(reject);
                        }, function (index) {
                            ////获取上次所在行下标
                            //var dataindex = $("#HEntryID").val() - 1;
                            layer.close(index);
                            //EchoValue();
                            layer.msg('已取消保存,请完善数据后重新操作', { icon: 2 });
                            //reject(new Error('用户取消了保存'));
                        });
                    } else {
                        proceedWithSave(dataindex).then(resolve).catch(reject);
                    }
                });
            }
            function proceedWithSave(dataindex) {
                return new Promise((resolve, reject) => {
                    if (OperationType == 3) {
                        EchoValue();
                    }
                    for (let i = 0; i < table.cache['ValueTable'].length; i++) {
                        if (table.cache['ValueTable'][i].HInSpectValueB == "" || table.cache['ValueTable'][i].HInSpectValueB == null) {
                            table.cache['ValueTable'][i].HInSpectValueB = 0
                        }
                        if (table.cache['ValueTable'][i].HInSpectValueT == "" || table.cache['ValueTable'][i].HInSpectValueT == null) {
                            table.cache['ValueTable'][i].HInSpectValueT = 0
                        }
                        if (table.cache['ValueTable'][i].HInSpectValue == "" || table.cache['ValueTable'][i].HInSpectValue == null) {
                            table.cache['ValueTable'][i].HInSpectValue = 0
                        }
                    }
                    var sValueTable = JSON.stringify(table.cache['ValueTable']);
                    var HInterID = $("#HInterID").val();
                    var HEntryID = dataindex;
                    var msg = sValueTable + ";" + HInterID + ";" + HEntryID
                    var index = layer.load();
                    $.ajax({
                        type: "POST",
                        url: GetWEBURL() + "/QC_FirstPieceCheckBill/set_SaveValue",
                        async: true,
                        data: { "msg": msg },
                        dataType: "json",
                        success: function (data) {
                            layer.close(index);
                            if (data.count == 1) {
                                layer.msg('检验值保存成功', { icon: 1 });
                                resolve(); // æˆåŠŸæ—¶resolve
                            } else {
                                layer.msg("检验值保存错误!" + data.Message, { icon: 5, btn: ['确认'], time: 100000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                                reject(new Error("检验值保存错误:" + data.Message));
                            }
                        },
                        error: function (err) {
                            layer.close(index);
                            layer.msg("检验值保存错误:" + err, { icon: 5, btn: ['确认'], time: 100000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                            reject(new Error("检验值保存错误:" + err));
                        }
                    });
                });
            }
            //检验值保存
            //function set_SaveValue(dataindex) {
            //    if (OperationType == 3) {
            //        EchoValue();
            //    }
            //    for (let i = 0; i < table.cache['ValueTable'].length; i++) {
            //        if (table.cache['ValueTable'][i].HInSpectValueB == "" || table.cache['ValueTable'][i].HInSpectValueB == null) {
            //            table.cache['ValueTable'][i].HInSpectValueB = 0
            //        }
            //        if (table.cache['ValueTable'][i].HInSpectValueT == "" || table.cache['ValueTable'][i].HInSpectValueT == null) {
            //            table.cache['ValueTable'][i].HInSpectValueT = 0
            //        }
            //        if (table.cache['ValueTable'][i].HInSpectValue == "" || table.cache['ValueTable'][i].HInSpectValue == null) {
            //            table.cache['ValueTable'][i].HInSpectValue = 0
            //        }
            //    }
            //    var sValueTable = JSON.stringify(table.cache['ValueTable']);
            //    var HInterID = $("#HInterID").val();
            //    var HEntryID = dataindex;
            //    var msg = sValueTable + ";" + HInterID + ";" + HEntryID
            //    var index = layer.load();
            //    $.ajax({
            //        type: "POST",
            //        url: GetWEBURL() + "/QC_FirstPieceCheckBill/set_SaveValue",
            //        async: false,
            //        data: { "msg": msg },
            //        dataType: "json",
            //        success: function (data) {
            //            if (data.count == 1) {
            //                layer.close(index);
            //                //$('#btnSave').addClass("layui-btn-disabled").attr("disabled", true);//保存按钮
            //        for (let i = 0; i < table.cache['ValueTable'].length; i++) {
            //            var row = table.cache['ValueTable'][i];
            //            if (rowFun == 2) {
            //                if (
            //                    (!row.HInSpectValue || row.HInSpectValue === "")) {
            //                    hasEmptyRow = true;
            //                    emptyRowNumbers.push(i + 1);
            //                }
            //            }
            //            else {
            //        }
            //        if (hasEmptyRow) {
            //            var confirmMsg = "检验值表格中存在空行(第 " + emptyRowNumbers.join(", ") + " è¡Œï¼‰ï¼Œæ˜¯å¦ç»§ç»­ä¿å­˜ï¼Ÿ";
            //            layer.confirm(confirmMsg, {
            //                icon: 3,
            //                title: '提示',
            //                btn: ['确认保存', '取消保存']
            //            }, function (index) {
            //                layer.close(index);
            //                layer.msg("检验值保存错误!" + data.Message, { icon: 5, btn: ['确认'], time: 100000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
            //            }
            //        },
            //        error: function (err) {
            //            layer.close(index);
            //            layer.msg("检验值保存错误:" + err, { icon: 5, btn: ['确认'], time: 100000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
            //                proceedWithSave(dataindex).then(resolve).catch(reject);
            //            }, function (index) {
            //                ////获取上次所在行下标
            //                //var dataindex = $("#HEntryID").val() - 1;
            //                layer.close(index);
            //                //EchoValue();
            //                layer.msg('已取消保存,请完善数据后重新操作', { icon: 2 });
            //                //reject(new Error('用户取消了保存'));
            //            });
            //        } else {
            //            proceedWithSave(dataindex).then(resolve).catch(reject);
            //        }
            //    });
            //}
            //function proceedWithSave(dataindex) {
            //    return new Promise((resolve, reject) => {
            //        if (OperationType == 3) {
            //            EchoValue();
            //        }
            //        for (let i = 0; i < table.cache['ValueTable'].length; i++) {
            //            if (table.cache['ValueTable'][i].HInSpectValueB == "" || table.cache['ValueTable'][i].HInSpectValueB == null) {
            //                table.cache['ValueTable'][i].HInSpectValueB = 0
            //            }
            //            if (table.cache['ValueTable'][i].HInSpectValueT == "" || table.cache['ValueTable'][i].HInSpectValueT == null) {
            //                table.cache['ValueTable'][i].HInSpectValueT = 0
            //            }
            //            if (table.cache['ValueTable'][i].HInSpectValue == "" || table.cache['ValueTable'][i].HInSpectValue == null) {
            //                table.cache['ValueTable'][i].HInSpectValue = 0
            //            }
            //        }
            //        var sValueTable = JSON.stringify(table.cache['ValueTable']);
            //        var HInterID = $("#HInterID").val();
            //        var HEntryID = dataindex;
            //        var msg = sValueTable + ";" + HInterID + ";" + HEntryID
            //        var index = layer.load();
            //        $.ajax({
            //            type: "POST",
            //            url: GetWEBURL() + "/QC_FirstPieceCheckBill/set_SaveValue",
            //            async: true,
            //            data: { "msg": msg },
            //            dataType: "json",
            //            success: function (data) {
            //                layer.close(index);
            //                if (data.count == 1) {
            //                    layer.msg('检验值保存成功', { icon: 1 });
            //                    resolve(); // æˆåŠŸæ—¶resolve
            //                } else {
            //                    layer.msg("检验值保存错误!" + data.Message, { icon: 5, btn: ['确认'], time: 100000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
            //                    reject(new Error("检验值保存错误:" + data.Message));
            //                }
            //            },
            //            error: function (err) {
            //                layer.close(index);
            //                layer.msg("检验值保存错误:" + err, { icon: 5, btn: ['确认'], time: 100000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
            //                reject(new Error("检验值保存错误:" + err));
            //            }
            //        });
            //    });
            //}
            //检验值保存
            function set_SaveValue(dataindex) {
                if (OperationType == 3) {
                    EchoValue();
                }
                for (let i = 0; i < table.cache['ValueTable'].length; i++) {
                    if (table.cache['ValueTable'][i].HInSpectValueB == "" || table.cache['ValueTable'][i].HInSpectValueB == null) {
                        table.cache['ValueTable'][i].HInSpectValueB = 0
                    }
                    if (table.cache['ValueTable'][i].HInSpectValueT == "" || table.cache['ValueTable'][i].HInSpectValueT == null) {
                        table.cache['ValueTable'][i].HInSpectValueT = 0
                    }
                    if (table.cache['ValueTable'][i].HInSpectValue == "" || table.cache['ValueTable'][i].HInSpectValue == null) {
                        table.cache['ValueTable'][i].HInSpectValue = 0
                    }
                }
                var sValueTable = JSON.stringify(table.cache['ValueTable']);
                var HInterID = $("#HInterID").val();
                var HEntryID = dataindex;
                var msg = sValueTable + ";" + HInterID + ";" + HEntryID
                var index = layer.load();
                $.ajax({
                    type: "POST",
                    url: GetWEBURL() + "/QC_FirstPieceCheckBill/set_SaveValue",
                    async: false,
                    data: { "msg": msg },
                    dataType: "json",
                    success: function (data) {
                        if (data.count == 1) {
                            layer.close(index);
                            //$('#btnSave').addClass("layui-btn-disabled").attr("disabled", true);//保存按钮
                        }
                        else {
                            layer.close(index);
                            layer.msg("检验值保存错误!" + data.Message, { icon: 5, btn: ['确认'], time: 100000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                        }
                    },
                    error: function (err) {
                        layer.close(index);
                        layer.msg("检验值保存错误:" + err, { icon: 5, btn: ['确认'], time: 100000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                    }
                });
            }
            //根据生产资源或者 å·¥åº æŸ¥è¯¢ç”Ÿäº§å·¥å•信息
            function get_ICMOBillStatusList() {
                var sWhere = "";
WebTM/views/³µ¼ä¹ÜÀí/µ¥Æ·¹ýÕ¾_СÎÀ/Cj_SachetBarCodePrint.html
@@ -14,6 +14,7 @@
    <script src="../../../layuiadmin/Scripts/webConfig.js"></script>
    <script src="../../../layuiadmin/PubCustom.js"></script>
    <script src="../../../layuiadmin/zgqCustom/zgqCustom.js"></script>
    <script src="../../../layuiadmin/grwebapp.js"></script>
    <style type="text/css">
        /*begin æ­¤æ ·å¼ç”¨äºŽæ¶ˆé™¤è¡Œå…ƒç´ ä¸­å¸ƒå±€å®½åº¦ä¸å¤Ÿçš„问题*/
@@ -378,8 +379,8 @@
            }
            function dy_PL(rest) {
                var HInterID = rest[num].HBarCodeID.toString();
                var sWhere = "select cast( b.流水号 as float) æµæ°´å·,生产订单号,a.销售订单号,a.生产数量,a.流转卡数量,a.产品代码,a.单据号,case when ISNULL(a.生产规格,'')='' then a.产品规格 else a.生产规格 end äº§å“è§„æ ¼,a.产品名称,a.日期,a.单据号,b.工序代码,b.工序名称,a.批号,b.工艺工作中心,b.工艺工艺参数,a.生产车间,b.工段名称,b.生产订单数量 from h_v_Sc_ProcessExchangeBillQuery a left join h_v_Sc_ProcessExchangeBillQuerySub b on a.hmainid=b.hmainid   where b.hmainid in(" + HInterID + ") and b.工序代码 != '9999' order by cast(b.流水号 as int)"
                var HItemID = rest[num].HBarCodeID.toString();
                var sWhere = "select top 1 HBarCode æ¡ç ç¼–号,isnull(ms.HCusRelationNumber,'') SKU from Gy_BarCodeBill a with(nolock) left join Gy_Material m with(nolock) on a.HMaterID = m.HItemID left join Gy_MateNumRelation_Sec ms with(nolock) on m.HMASTERID = ms.HMaterID where a.HItemID = " + HItemID
                $.ajax({
                    type: "GET",
@@ -390,6 +391,11 @@
                        if (data.count == 1) { // è¯´æ˜ŽéªŒè¯æˆåŠŸäº†ï¼Œ
                            if (data.data.length != 0) {
                                if (data.data[0].SKU == "") {
                                    layer.msg("物料SKU未维护,请联系管理员确认!");
                                    return;
                                }
                                var dataPrint = [];
                                for (var i = 0; i < data.data.length; i++) {
                                    dataPrint.push(data.data[i])
@@ -403,11 +409,11 @@
                                    type: "print",//打印模式
                                    //type: "preview",//预览模式
                                    showOptionDlg: false, //如果不显示打印对话框而直接打印,将此行注释去掉即可
                                    report: urlAddRandomNo("../../grf/流转卡JSON.grf"),
                                    report: urlAddRandomNo("../../grf/香囊模板JSON.grf"),
                                    data: Customer
                                };
                                console.log(data.data[0].单据号);
                                console.log("打印香囊条码:" + data.data[0].条码编号);
                                //var args = {
                                //    report: urlAddRandomNo("../../grf/cs10.grf"),
                                //    data: Customer