HTML:

<form id="form1">
        <div id="t_border">
            <!--startprint-->
            <div id="first">
                <span id="title">****汽车服务连锁施工单</span>
            </div>
            <table id="TableTitle" style="width:1200px;margin-bottom:10px;">
                <tr>
                    <td id="memberCard"></td>
                    <td id="deName"></td>
                    <td id="orderDate"></td>
                </tr>
                <tr>
                    <td id="memberType"></td>
                    <td id="consumeType"></td>
                    <td id="handleMan"></td>
                </tr>
            </table>

<table id="pTable">
            </table>
            <table id="TableFoot" style="width:1200px;margin-top:10px;">
                <tr>
                    <td id="orderMemo"></td>
                </tr>
                <tr>
                    <td id="workHours"></td>
                    <td id="technician"></td>
                    <td id="payWay"></td>
                </tr>
                <tr>
                    <td id="receiveM"></td>
                    <td id="cutMoney"></td>
                    <td id="totalM"></td>
                </tr>
            </table>
            <table id="custSign">
                <tr>
                    <td>技师签字:________________________</td>
                    <td style="width:420px;"></td>
                    <td>客户签字:________________________</td>
                </tr>
            </table>
            <div id="address">
                <span>地址:****汽车服务连锁</span><span>&nbsp;&nbsp;&nbsp;&nbsp;加盟电话:400-990-8816 / 0371-555111333</span>
                <!-- <span id="printTime"></span> -->
            </div>
            <!--endprint-->
            <div></div>
        </div>
        <div id="dayin">
            <input id="print" type="button" name="print" value="打印" onclick="preview()" />
        </div>
    </form>

JS:

$(function () {

//动态生成打印订单
    var tr = " <tr id=\"title1\"><td  style=\"width: 70px;\">编码</td><td style=\"width: 180px;\">商品名称

</td><td style=\"width: 60px;\">规格</td><td style=\"width: 80px;\">型号</td><td style=\"width: 60px;\">单

位</td><td style=\"width: 60px;\">数量</td> <td style=\"width: 70px;\">单价</td><td style=\"width: 70px;\">

金额</td><td  style=\"width: 80px;\">备注</td></tr>";
    $.parser.parse($("#pTable").html(tr.toString()));

//消费清单列表
    $.post('../Ajax/MemberConsumAjax.ashx?cmd=getMemberCon', { 'mclId': top.jQuery("#printId").val() },

function (result) {
        var result = eval('(' + result + ')');

$.each(result.list, function (i, purList) {
            if (purList.memberType == "非会员") {
                $("#memberCard").text("车主:" + purList.cust_Name);
            } else {
                $("#memberCard").text("会员卡号:" + purList.memberId);
            }
            $("#deName").text("消费门店:" + purList.deName1);

$("#orderDate").text("单据日期:" + purList.or_Date);
            $("#handleMan").text("经手人:" + purList.handleMan);
            $("#memberType").text("会员类型:" + purList.memberType);
            $("#consumeType").text("消费类型:" + purList.consumeType);
            var memo = "";
            if (purList.or_Memo == null) {

$("#orderMemo").text("备注:" + memo);
            } else {
                $("#orderMemo").text("备注:" + purList.or_Memo);
            }
           
            $("#totalM").text("总金额:"+purList.or_TotalM1);
            $("#receiveM").text("应收金额:"+purList.recieveM);
            $("#cutMoney").text("优惠金额:"+purList.cutMoney);
            if (purList.workHours != null) {
                $("#workHours").text("工时:" + purList.workHours);
            } else {
                $("#workHours").text("工时:");
            }
            if (purList.technician != null) {
                $("#technician").text("技师:" + purList.technician);
            } else {
                $("#technician").text("技师:");
            }
            $("#payWay").html("");
            if (purList.memberType == "非会员") {
                var payWay = "";

if (1 == purList.pw_Id1) {
                    payWay += "<input name=\"payWay\" type=\"checkbox\"   disabled=\"disabled\" checked=

\"checked\" />现金";
                }
                if (2 == purList.pw_Id2) {
                    payWay += "<input name=\"payWay\" type=\"checkbox\"   disabled=\"disabled\" checked=

\"checked\" />银行卡";
                }
                if (3 == purList.pw_Id3) {
                    payWay += "<input name=\"payWay\" type=\"checkbox\" disabled=\"disabled\" checked=

\"checked\" />微信";
                }
                if (4 == purList.pw_Id4) {
                    payWay += "<input name=\"payWay\" type=\"checkbox\"   disabled=\"disabled\" checked=

\"checked\" />支付宝";
                }
                if (5 == purList.pw_Id5) {
                    payWay += "<input name=\"payWay\" type=\"checkbox\"  disabled=\"disabled\" checked=

\"checked\" />美团";
                }
                $.parser.parse($("#payWay").html("支付方式:" + payWay.toString()));
            }
            //明细
            $.post('../Ajax/MemberConsumAjax.ashx?cmd=memberConsum', { 'mclId': top.jQuery("#printId").val

(), 'de_Id': purList.de_Id1 }, function (result) {
                var result = eval('(' + result + ')');
                $.each(result.rows, function (i, retail) {
                    var g_Size = "";
                    var g_Version = "";
                    var g_Unit = "";
                    if (retail.g_Size != null) {
                        g_Size = retail.g_Size;
                    }
                    if (retail.g_Version != null) {
                        g_Version = retail.g_Version;
                    }
                    if (retail.g_Unit != null) {
                        g_Unit = retail.g_Unit;
                    }
                    //截取过长的商品名称
                    var g_Name = "";
                    if (retail.g_Name.length > 35) {
                        g_Name = retail.g_Name.substring(0, 20) + "......";
                    } else {
                        g_Name = retail.g_Name;
                    }

tr += " <tr><td>" + retail.g_Code + "</td><td>" + g_Name + "</td><td>" + g_Size +

"</td><td>" + g_Version + "</td><td>" + g_Unit + "</td><td>" + retail.number + "</td><td>" + retail.price +

"</td><td>" + retail.totalMoney + "</td>";
                    if (retail.memo != null) {
                        tr += "<td>" + retail.memo + "</td>";
                    } else {
                        tr += "<td></td>";
                    }
                    tr += "</tr>";
                });
                $.parser.parse($("#pTable").html(tr.toString()));
            });
            return false;
        });
    });
        
    //无预览,直接打印
    if (top.jQuery("#isPreOrPrint").val() == "print") {
        bdhtml = window.document.body.innerHTML;
        sprnstr = "<!--startprint-->";
        eprnstr = "<!--endprint-->";
        prnhtml = bdhtml.substr(bdhtml.indexOf(sprnstr) + 17);
        prnhtml = prnhtml.substring(0, prnhtml.indexOf(eprnstr));
        window.document.body.innerHTML = prnhtml;
        window.print();
    }
});

//打印日期
function PrintTime() {
    var date = new Date();
    var seperator1 = "/";
    var seperator2 = ":";
    var month = date.getMonth() + 1;
    var strDate = date.getDate();
    var hours = date.getHours();
    var minutes = date.getMinutes();
    var secondes = date.getSeconds();

if (month >= 1 && month <= 9) {
        month = "0" + month;
    }
    if (strDate >= 0 && strDate <= 9) {
        strDate = "0" + strDate;
    }
    if (hours >= 0 && hours <= 9) {
        hours = "0" + hours;
    }
    if (minutes >= 0 && minutes <= 9) {
        minutes = "0" + minutes;
    }
    if (secondes >= 0 && secondes <= 9) {
        secondes = "0" + secondes;
    }
    var currentTime = date.getFullYear() + seperator1 + month + seperator1 + strDate + "   " + hours + seperator2 + minutes + seperator2 + secondes;
    return currentTime;
}

//打印
function preview() {
    bdhtml = window.document.body.innerHTML;
    sprnstr = "<!--startprint-->";
    eprnstr = "<!--endprint-->";
    prnhtml = bdhtml.substr(bdhtml.indexOf(sprnstr) + 17);
    prnhtml = prnhtml.substring(0, prnhtml.indexOf(eprnstr));
    window.document.body.innerHTML = prnhtml;
    window.print();
    //prnform.htext.value=prnhtml;
    //prnform.submit();
    //alert(prnhtml);
}
//获取当前日期并格式化
function getNowFormatDate() {
    var date = new Date();
    var seperator1 = "-";
    var seperator2 = ":";
    var month = date.getMonth() + 1;
    var strDate = date.getDate();

if (month >= 1 && month <= 9) {
        month = "0" + month;
    }
    if (strDate >= 0 && strDate <= 9) {
        strDate = "0" + strDate;
    }
    var currentdate = date.getFullYear() + seperator1 + month + seperator1 + strDate;
    return currentdate.toString();
}

CSS:

body {font-size: 25px;}

li { float: left;list-style-type: none;}
#t_border {   border: 1px dashed #ccc; width: 1200px; padding: 50px; margin: 50px;}
table { border-collapse: collapse; width: 1200px;margin: 0 0;}
 table td {border: 1px solid #000; text-align: center; height: 35px; line-height: 35px; }
/*表格样式*/
#TableTitle tr td,#TableFoot tr td,#custSign tr td{padding:0; margin:0;border:none ;text-align:left; }
#TableTitle, #TableFoot,#custSign { margin-left:10px;}
#TableFoot { width:1200px;}
#title1 { height: 45px;line-height: 45px;}
#dayin ,#DayIn{ text-align: center;}
#first {  width: 1200px;margin-bottom: 10px;}
#title { font-family: Microsoft YaHei; font-size: 46px;padding-left: 270px;}
#printTime { float: right;}
 #f2 {margin-top:10px;}
#sign {float:right;margin-right:100px;}
#mSign {  margin-top:50px;}
 #address {margin-left:9px;margin-top:20px;}
#pTable {margin-top:5px;}
#reFoot {margin-top: 20px; width: 1200px; margin-left:-40px;}

C#打印单据的更多相关文章

  1. JASPER打印单据,标签开发培训, 界面开发培训

    JASPER打印单据,标签开发培训软件:TIBC JASPER Studio.Jaspersoft Studio是一个专为JasperReports报表引擎而开发的报表设计器,是 iReport设计器 ...

  2. C# 利用PrintDocument定制打印单据

    本文是利用PrintDocument定制打印单据的小例子,仅供学习分享使用,如果不足之处,还请指正. 涉及知识点: PrintDocument :从 Windows 窗体应用程序打印时,定义一种可重用 ...

  3. 打印单据,A4纸,每个单据占一个A4纸,两个单据之间不挨着

    打印单据,A4纸,每个单据占一个A4纸,两个单据之间不挨着 <style type="text/css" media="print">.Noprin ...

  4. VS2012报表(RDLC)系列应用之单据批量打印

    一.前言 最近做的项目需要单据批量打印的功能,优先想到用RDLC来实现.经过Visual Studio几个版本的发展后,RDLC愈发成熟,操作方式也变得简洁,相比vs2005的版本,有质的提升,不过仍 ...

  5. PDA手持机 移动开单进销存系统 现场出打印凭据和扫码 新的亮点

    传统车销模式弊端:1.手写开单,效率低,动作慢2.现场手写开单明细不能打印,产品明细不规范3.电脑办公人员及车销人员对车上的库存情况掌握不清楚,销售人员对每种产品销售价格不清楚4.老板对员工工作的管控 ...

  6. 吉特仓库管理系统-.NET打印问题总结

    在仓储系统的是使用过程中避免不了的是打印单据,仓库系统中包含很多单据:入库单,出库单,盘点单,调拨单,签收单等等,而且还附带着很多的条码标签的打印.本文在此记录一下一个简单的打印问题处理方式.处理问题 ...

  7. FastReport 打印模版页(TFrxReportpage)复制

    遇到一个奇葩的需求.一般情况下我们打印单据,用FastReport设置打印格式,也就是就设一个模版页而己,就是一种单据格式.如果打印的单据数据多了就自动打印多页了,他们的格式是一样的.也就是读同一个模 ...

  8. 车销宝无线开单PDA 一款互联网+POS神器 无缝与电脑数据同步 无线POS开单解决方案

    1.无线POS开单解决方案是基于后台系统开发的一套系统,它实现了采购入库退货.销售出库退货.盘点调拨等功能. 2.系统通过(WIFI.GPRS.GSM.蓝牙)实时后台库存.客户.商品.价格跟踪等信息, ...

  9. XAF点滴:很具体很用实用---处理三个小问题

    以下内容全部为web版本的老模板风格下完成. 一.在编辑状态的详细视图下打印报表. 有些时候,需要在编辑状态下直接打印报表内容,官方默认是不允许这样做的.用Reflector查看源码,可以看到: De ...

随机推荐

  1. ubuntu 系统问题总结

    一.主题问题 高分辨率显示可能会造成虚拟机中的显示很小,需要调整合适的显示比例.但是 ubuntu 18.04 中的 display 的 scale 只能调整 100% 300%,可能使用 gnome ...

  2. 左半连接left demi-join

    返回左边表的记录,前提是其记录对于右边表满足on语句的判定条件 对于左表中一条指定的记录,在右表中一旦找到匹配的记录,hive就会立即停止扫描 1.sql select s.myd,s,symbol, ...

  3. eclipse中export 的jar file与 runnable jar file的区别

    (1)直接运行 .class的方法     java  -cp .  com.guangfa.demo1  , 不用加.class后缀 .-cp 是 -classpath 缩写,是指定类运行所依赖其他 ...

  4. postman实现Base64加密

    1.新建一个Collection 2.新建一个request 3.新增一个环境变量(全局变量也可以) 4.在variable中填入需要加密的变量名称,比如password 5.在body中填好参数,需 ...

  5. LeetCode--102--二叉树的层次遍历(python)

    给定一个二叉树,返回其按层次遍历的节点值. (即逐层地,从左到右访问所有节点). 例如:给定二叉树: [3,9,20,null,null,15,7], 3    / \  9 20  / \ 15 7 ...

  6. springboot自定义错误页

    静态错误页放在         动态可以放在freemaker或者thymeleaf         匹配规则: 先找动态页面再找静态页面 先找精确错误页面再找模糊页面     注:精确错误页面=50 ...

  7. Spring Boot文件上传

    一.创建一个简单的包含WEB依赖的SpringBoot项目 二.配置文件上传的文件大小限制 # 上传文件总的最大值spring.servlet.multipart.max-request-size=1 ...

  8. mysql CHECK约束 语法

    mysql CHECK约束 语法 作用:CHECK 约束用于限制列中的值的范围. 直线电机 说明:如果对单个列定义 CHECK 约束,那么该列只允许特定的值.如果对一个表定义 CHECK 约束,那么此 ...

  9. php array_values()函数 语法

    php array_values()函数 语法 作用:返回数组的所有值(非键名)富瑞华大理石平台 语法:array_values(array) 参数: 参数 描述 array  必需.规定数组.    ...

  10. #1113-JSP 语法

    JSP 语法 JSP开发中的基础语法. 脚本程序 脚本程序可以包含任意量的Java语句.变量.方法或表达式,只要它们在脚本语言中是有效的. 脚本程序的语法格式: <% 代码片段 %> 或者 ...