C#打印单据
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> 加盟电话: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#打印单据的更多相关文章
- JASPER打印单据,标签开发培训, 界面开发培训
JASPER打印单据,标签开发培训软件:TIBC JASPER Studio.Jaspersoft Studio是一个专为JasperReports报表引擎而开发的报表设计器,是 iReport设计器 ...
- C# 利用PrintDocument定制打印单据
本文是利用PrintDocument定制打印单据的小例子,仅供学习分享使用,如果不足之处,还请指正. 涉及知识点: PrintDocument :从 Windows 窗体应用程序打印时,定义一种可重用 ...
- 打印单据,A4纸,每个单据占一个A4纸,两个单据之间不挨着
打印单据,A4纸,每个单据占一个A4纸,两个单据之间不挨着 <style type="text/css" media="print">.Noprin ...
- VS2012报表(RDLC)系列应用之单据批量打印
一.前言 最近做的项目需要单据批量打印的功能,优先想到用RDLC来实现.经过Visual Studio几个版本的发展后,RDLC愈发成熟,操作方式也变得简洁,相比vs2005的版本,有质的提升,不过仍 ...
- PDA手持机 移动开单进销存系统 现场出打印凭据和扫码 新的亮点
传统车销模式弊端:1.手写开单,效率低,动作慢2.现场手写开单明细不能打印,产品明细不规范3.电脑办公人员及车销人员对车上的库存情况掌握不清楚,销售人员对每种产品销售价格不清楚4.老板对员工工作的管控 ...
- 吉特仓库管理系统-.NET打印问题总结
在仓储系统的是使用过程中避免不了的是打印单据,仓库系统中包含很多单据:入库单,出库单,盘点单,调拨单,签收单等等,而且还附带着很多的条码标签的打印.本文在此记录一下一个简单的打印问题处理方式.处理问题 ...
- FastReport 打印模版页(TFrxReportpage)复制
遇到一个奇葩的需求.一般情况下我们打印单据,用FastReport设置打印格式,也就是就设一个模版页而己,就是一种单据格式.如果打印的单据数据多了就自动打印多页了,他们的格式是一样的.也就是读同一个模 ...
- 车销宝无线开单PDA 一款互联网+POS神器 无缝与电脑数据同步 无线POS开单解决方案
1.无线POS开单解决方案是基于后台系统开发的一套系统,它实现了采购入库退货.销售出库退货.盘点调拨等功能. 2.系统通过(WIFI.GPRS.GSM.蓝牙)实时后台库存.客户.商品.价格跟踪等信息, ...
- XAF点滴:很具体很用实用---处理三个小问题
以下内容全部为web版本的老模板风格下完成. 一.在编辑状态的详细视图下打印报表. 有些时候,需要在编辑状态下直接打印报表内容,官方默认是不允许这样做的.用Reflector查看源码,可以看到: De ...
随机推荐
- man - 格式化并显示在线帮助手册页
总览 man [-acdfFhkKtwW] [-m 系统名] [-p <前处理程序>] [-C <配置文件>] [-M <路径>] [-P <浏览方式> ...
- 图解Qt安装(Windows平台)
http://c.biancheng.net/view/3858.html 本节介绍 Qt 5.9.0 在 Windows 平台下的安装,请提前下载好 Qt 5.9.0.不知道如何下载 Qt 的读者请 ...
- shell安装mysql,连接数据库,创建数据库
https://blog.csdn.net/yhflyl/article/details/83061126 https://blog.csdn.net/wyl9527/article/details/ ...
- 创建kudu数据集测试总结
参考文档: https://cloud.tencent.com/developer/article/1474797 https://www.tgshenghe.com/a77nr1/nzt9t1.ht ...
- linux 上配置swoole
1.首先我们要安装swoole扩展的话,需要把它的包下载下来,下载地址是: https://github.com/swoole/swoole-src 本人qq群也有许多的技术文档,希望可以为你提供一些 ...
- linux 时区问题
1.java项目发现 服务器时间不正确,修改了服务器时间之后依然没解决. 2.java虚拟机的时区也需要设置:
- TCP/IP基础总结性学习(7)
确保 Web 安全的 HTTPS 在 HTTP 协议中有可能存在信息窃听或身份伪装等安全问题.使用 HTTPS 通信机制可以有效地防止这些问题. 一. HTTP 的缺点 HTTP 主要有这些不足,例举 ...
- 开发框架DevExtreme全新发布v19.1.3|附下载
DevExtreme Complete Subscription是性能最优的 HTML5,CSS 和 JavaScript 移动.Web开发框架,可以直接在Visual Studio集成开发环境,构建 ...
- 前端之CSS:属性操作1
css之操作属性 1.文本 1.文本颜色:color 颜色属性被用来设置文字的颜色. 颜色是通过CSS最经常的指定: 十六进制值 - 如: #FF0000 一个RGB值 - 如: RGB(255,0, ...
- SpringToolSuit(STS)添加了Lombok后仍然报错
参见这篇博客 https://blog.csdn.net/qq_27442469/article/details/90612918 上面步骤做完后,在项目右键->Maven->Update ...