js获取easyui数据,根据厚度,宽度,材质一致合并,长度相加显示

 <a href="javascript:printBill()" class="bt"
                           style="margin-left:5px;text-decoration:none;color:#ffffff;float: right;background-color:#1FB5AC;border: 1px #1FB5AC solid; width: 75px; height: 25px;text-align: center;font-family: '微软雅黑';font-size: 12px;line-height: 25px;border-radius: 3px">
                            打印清单
</a>
<div id="printDiv" style="display: none">
    <table  border="1" cellpadding="2" cellspacing="0" width="100%" style="font-size:13px;">
        <div style="width: 100%">

            <tr id="printTable">

            </tr>
        </div>
    </table>
</div>
//需求,如果封边材质,封边厚度,封边宽度,一致则把封边长度相加合并。
//js打印清单
    function printBill() {
        var userName = $("#userName").val();
        var date = getNowFormatDate();
        //获取选中行
        var checkedItems = $('#div1').datagrid('getChecked');

        //所有的工单编号
        var workSheetCodes = new Array();
        var workSheetCodeStr = "";
        //所有的产品名称
        var productNames = new Array();
        var productNameStr = "";
        for(var i = 0; i < checkedItems.length; i++){
            workSheetCodes[i] = checkedItems[i]['workSheetCode'];
            productNames[i] = checkedItems[i]['workSheetProductName'];
        }

		//去重开始
        for(var i = 0; i < checkedItems.length-1; i++){
            //打印条数数量去重
            for(var j = i+1; j < checkedItems.length; j++){
                if((checkedItems[i]['hardwareProperty']==checkedItems[j]['hardwareProperty'])&&
                    (checkedItems[i]['hardwareThick']==checkedItems[j]['hardwareThick'])&&
                    (checkedItems[i]['productName']==checkedItems[j]['productName'])){
                    checkedItems[i]['plateName']=(Number(checkedItems[i]['plateName']) + Number(checkedItems[j]['plateName']));
                    checkedItems.splice(j,1);
                    j--;
                }
            }
            //工单编号去重
            for(var j = i+1; j < workSheetCodes.length; j++){

                if(workSheetCodes[i]==workSheetCodes[j]){
                    workSheetCodes.splice(j,1);
                    j--;
                }
            }
            //产品名称去重
            for(var j = i+1; j < productNames.length; j++){
                if(productNames[i]==productNames[j]){
                    productNames.splice(j,1);
                    j--;
                }
            }
        }


        for(var i =0; i<workSheetCodes.length; i++){
            if(i==0){
                workSheetCodeStr =  workSheetCodes[i];
            }else{
                workSheetCodeStr += ","+workSheetCodes[i];
            }

        }

        for(var i =0; i<productNames.length; i++){
            if(i==0){
                productNameStr =  productNames[i];
            }else{
                productNameStr += ","+productNames[i];
            }

        }

        var code =  getNowcode();
        $("#formCode").html(code);
        $("#beginFormDate").html(date);

        if(checkedItems.length == 0){
            layerContent("请选择需要打印的数据!");
            return;
        }
        var LODOP;
        LODOP=getLodop();
        var dataRow = "";
        var nums =0;

        dataRow += '<tr height="25">';
        dataRow += '<td align="center" valign="middle" colspan="4">工单号</td>';
        dataRow += '<td align="center" valign="middle" colspan="28">'+workSheetCodeStr+'</td>';
        dataRow += '</tr>';

        dataRow += '<tr height="25">';
        dataRow += '<td align="center" valign="middle" colspan="4">产品名称</td>';
        dataRow += '<td align="center" valign="middle" colspan="28">'+productNameStr+'</td>';
        dataRow += '</tr>';

        dataRow += '<tr style="height: 25px;">';
        dataRow += ' <td colspan="8" align="center" valign="middle">封边材质</td>';
        dataRow += '  <td colspan="8" align="center" valign="middle">封边厚度</td>';
        dataRow += ' <td colspan="8" align="center" valign="middle">封边宽度</td>';
        dataRow += '  <td colspan="8" align="center" valign="middle">封边长度</td>';

        dataRow += '</tr>';
        $.each(checkedItems, function (index, item) {
            var productName = item.productName;
            if(productName == undefined){
                productName ="";
            }
            var hardwareProperty = item.hardwareProperty;
            if(hardwareProperty == undefined){
                hardwareProperty ="";
            }
            var hardwareThick = item.hardwareThick;
            if(hardwareThick == undefined){
                hardwareThick ="";
            }


            var plateName = item.plateName;
            if(plateName == undefined){
                plateName ="";
            } else{
                plateName = (parseFloat(plateName)/1000).toFixed(1);
            }

            dataRow += '<tr height="25">';
            dataRow += '<td align="center" valign="middle" colspan="8">' + productName + '</td>';
            dataRow += '<td align="center" valign="middle" colspan="8">' + hardwareProperty + '</td>';
            dataRow += '<td align="center" valign="middle" colspan="8">' + hardwareThick + '</td>';
            dataRow += '<td align="center" valign="middle" colspan="8">' + plateName + '</td>';

            //dataRow += '<td align="center" valign="middle" colspan="8">' + planDateStart1 + '-' + planDateEnd1 + '</td>';
            dataRow += '</tr>';
            nums +=  parseInt();
            // 页码(循环)
            LODOP.SET_PRINT_STYLE("FontSize",10);
            LODOP.ADD_PRINT_HTM("190mm","260mm","50mm","5mm","<span tdata='pageNO' style='font-size:13px;'>第 ## 页</span> / <span tdata='pageCount' style='font-size:13px;'>共 ## 页</span>");
            LODOP.SET_PRINT_STYLEA(0,"ItemType",1);
        });
        dataRow += '<tr height="25">';
        dataRow += '<td align="center" valign="middle" colspan="4">说明</td>';
        dataRow += '<td align="center" valign="middle" colspan="28"></td>';
        dataRow += '</tr>';
        dataRow += '<tr height="25">';
        dataRow += '<td align="center" valign="middle" colspan="4">制单人</td>';
        dataRow += '<td align="center" valign="middle" colspan="4">'+userName+'&nbsp&nbsp</td>';
        dataRow += '<td align="center" valign="middle" colspan="4">审核人</td>';
        dataRow += '<td align="center" valign="middle" colspan="4">&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp</td>';
        dataRow += '<td align="center" valign="middle" colspan="4">打印人</td>';
        dataRow += '<td align="center" valign="middle" colspan="4">'+userName+'&nbsp&nbsp</td>';
        dataRow += '<td align="center" valign="middle" colspan="4">打印日期</td>';
        dataRow += '<td align="center" valign="middle" colspan="4">'+date+'</td>';
        dataRow += '</tr>';
        dataRow += '<tr height="25">';
        dataRow += '<td align="center" valign="middle" colspan="4">制单签字</td>';
        dataRow += '<td align="center" valign="middle" colspan="4"></td>';
        dataRow += '<td align="center" valign="middle" colspan="4">领料签字</td>';
        dataRow += '<td align="center" valign="middle" colspan="4"></td>';
        dataRow += '<td align="center" valign="middle" colspan="4">仓库签字</td>';
        dataRow += '<td align="center" valign="middle" colspan="4"></td>';
        dataRow += '<td align="center" valign="middle" colspan="4">审批签字</td>';
        dataRow += '<td align="center" valign="middle" colspan="4"></td>';
        dataRow += '</tr>';
        dataRow += '<tr height="25">';
        dataRow += '<td align="center" valign="middle" colspan="32">说明:封边采购使用此单领用,仓库和领料人必须签字才可领料。' +
            '对于需要退回包装的材料必须退回包装才可使用此单领料。</td>';
        dataRow += '</tr>';


        $("#printTable").html(dataRow);
        LODOP.SET_PRINT_PAGESIZE(2,0,0,"A4");
        // 表格表头(循环)
        LODOP.SET_PRINT_STYLE("FontSize",15);
        LODOP.SET_PRINT_STYLE("Bold",1);
        LODOP.ADD_PRINT_TEXT("5mm","120mm","100mm","20mm","封边采购领用单" );
        //top left width high
        // 表格数据
        LODOP.SET_PRINT_STYLE("Bold",0);
        LODOP.ADD_PRINT_TABLE("16mm","8mm","280mm","160mm",$("#printDiv").html());
        LODOP.SET_SHOW_MODE("LANDSCAPE_DEFROTATED",1);//横向打印预览正向显示

        LODOP.PREVIEW();
        // LODOP.PRINT;
        $('#div1').datagrid('reload');
    }

在这里插入图片描述
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_41373328/article/details/84581590
今日推荐