JS 打印报表
<script type="text/javascript">
window.print();
</script>
前台页面:
<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<IEnumerable<Maxuni.Entity.VOutProceExel>>" %> <!DOCTYPE html>
<html>
<head id="Head1" runat="server">
<title>打印外协发出订单</title>
<style type="text/css">
.table1
{
border-bottom-color: Black;
border-left-color: Black;
border-right-color: Black;
border-collapse: collapse;
background-color: #FFFFFF;
width: %;
}
.td1
{
border-bottom-color: Black;
border-left-color: Black;
border-right-color: Black;
border-collapse: collapse;
border-top-color: Black;
}
</style>
<script type="text/javascript">
window.print();
</script>
</head>
<body>
<div style="text-align: center; vertical-align: middle; width: 100%;" layouth=""
id="order_panel">
<table style="width: 100%; text-align: left">
<tr>
<td colspan="" style="width: 70%;">
<div style="float: left;">
<img alt="" src="../../../../Content/images/Maxuni_logo_2.jpg" style="float: left;
margin: 15px 0px 0px 10px" />
</div>
<br />
<br />
<br />
<div style="font-size: 18px; font-weight: bold">
<%=ViewData["companyname"] %></div>
<div style="font-size: 13px; font-family: 宋体">
工厂地址:<%=ViewData["address"]%><br />
电话:<%=ViewData["tel"]%>
<br />
传真:<%=ViewData["fax"]%><br />
网址:<%=ViewData["homepage"]%><br />
Email:<%=ViewData["email"]%>
</div>
</td>
<td style="width: 30%">
<table class="table1" cellpadding="" cellspacing="" border="" bordercolorlight="#000000"
style="text-align: center; font-size: 13px; font-family: 宋体">
<tr style="height: 30px">
<td class="td1">
外 协 订 单
</td>
</tr>
<tr style="height: 30px">
<td class="td1">
<%=ViewData["OrderNo"] %>
</td>
</tr>
</table>
</td>
</tr>
</table>
<table width="100%" style="text-align: left; font-size: 13px; font-family: 宋体">
<tr>
<td style="width: 20%"> </td>
<td style="width: 30%">
</td>
<td style="width: 30%">
</td>
<td style="width: 20%">
日期:<%=DateTime.Now.ToString("yyyy-MM-dd") %>
</td>
</tr>
</table>
<table class="table1" cellpadding="" cellspacing="" border="" bordercolorlight="#000000"
style="text-align: left; font-size: 13px; font-family: 宋体">
<tr>
<td style="width: 40%" class="td1">
厂商:<%=ViewData["strsupplierName"]%>
</td>
<td style="width: 20%" class="td1">
联系人:<%=ViewData["strcontactperson1"] %>
</td>
<td style="width: 20%" class="td1">
电话:<%=ViewData["strtel"] %>
</td>
<td style="width: 20%" class="td1">
传真:<%=ViewData["strfax"]%>
</td>
</tr>
</table>
<table width="100%" style="text-align: left; font-size: 13px; font-family: 宋体">
<tr>
<td>
兹向贵公司订购以下货品如下表列,请在即日起,当天之内签回副本 !
</td>
</tr>
</table>
<table class="table1" cellpadding="" cellspacing="" border="" bordercolorlight="#000000"
style="font-size: 14px; font-family: 宋体">
<thead>
<tr> <th class="td1">
序号
</th>
<th class="td1">
模具编号
</th>
<th class="td1">
零件名称
</th>
<th class="td1">
零件编号
</th>
<th class="td1">
加工内容/要求
</th>
<th class="td1">
件数
</th>
<th class="td1">
规格加工备注
</th>
<th class="td1">
单价
</th>
<th class="td1">
总价
</th>
<th class="td1">
交期
</th>
</tr>
</thead>
<tbody>
<% int i = ; %>
<% foreach (var item in Model)
{ %><tr>
<td class="td1">
<%: i++ %>
</td>
<td class="td1">
<%: item.mouldNo %>
</td>
<td class="td1">
<%: item.partName %>
</td>
<td class="td1">
<%: item.drawingNo %>
</td>
<td class="td1">
<%: item.OutTypeName %>
</td>
<td class="td1">
<%: item.qty %>
</td>
<td class="td1">
<%: item.processRequire %>
</td>
<td class="td1">
<%: item.Price%>
</td>
<td class="td1">
<%: item.TotaPricel %>
</td>
<td class="td1">
<%: item.oendDate.Value.ToString("yyyy-MM-dd") %>
</td>
</tr>
<% } %>
<tr>
<td colspan="" align="right" class="td1">
合计(RMB)
</td>
<td class="td1">
<%=ViewData["TotalPrice"]%>
</td>
<td class="td1">
折扣:<%=ViewData["discount"]%>%
</td>
</tr>
</tbody>
</table>
<table width="100%" style="text-align: left; font-size: 13px; font-family: 宋体">
<% foreach (var item in ViewData["allcond"] as IList<Maxuni.Entity.OrderCond>)
{ %><tr>
<td class="td1">
(<%: item.SortId%>)
<%: item.CondContent%>
</td>
</tr>
<%} %>
</table>
<br />
<table class="table1" cellpadding="" cellspacing="" border="" bordercolorlight="#000000"
style="font-size: 13px; font-family: 宋体; text-align: center">
<tr>
<td style="width: 25%;" class="td1">
经办人
</td>
<td style="width: 25%;" class="td1">
甲方审查
</td>
<td style="width: 25%;" class="td1">
甲方批准
</td>
<td style="width: 25%;" class="td1">
卖方确认(供应商)
</td>
</tr>
<tr>
<td style="width: 25%;" class="td1">
<%=ViewData["currentuser"]%>
</td>
<td style="width: 25%;" class="td1">
</td>
<td style="width: 25%;" class="td1">
</td>
<td style="width: 25%;" class="td1">
</td>
</tr>
<tr>
<td style="width: 25%;" class="td1">
年 月 日
</td>
<td style="width: 25%;" class="td1">
年 月 日
</td>
<td style="width: 25%;" class="td1">
年 月 日
</td>
<td style="width: 25%;" class="td1">
年 月 日
</td>
</tr>
</table>
</div>
</body>
</html>
后台信息:
using System.Linq;
using System.Web.Mvc;
using Maxuni.Entity;
using Maxuni.Repository;
using System.Collections.Generic; namespace MaxuniWeb.Areas.outProcessGL
{
public class VOutProceExelController : BaseController<VOutProceExel>
{
VOutProceExelRepository objVOutProceExelRepository = new VOutProceExelRepository();
CompayRepository objCompayRepositoryRepository = new CompayRepository();
OrderCondRepository objOrderCondRepository = new OrderCondRepository();
SupplierRepository objSupplierRepository = new SupplierRepository();
OProcessRequisitionRepository objOProcessRequisitionRepository = new OProcessRequisitionRepository(); public VOutProceExelController()
{
//写查询条件,比如:base.strConditions = " RoleName like '%{0}%' and 1=1 ";
base.strConditions = " 1=1 ";
base.objBaseRepository = this.objVOutProceExelRepository; }
[MaxuniAuthAttribute(Roles = "sysroles")]
public ActionResult PrintIndex(string id)
{ var obj = objOProcessRequisitionRepository.GetOneRecord(id);
string strWhere = " from VOutProceExel where OProcessRequisitionId='" + obj.Id + "'";
var objlist = objBaseRepository.GetAll(strWhere);
GetSupplierCompanyInfo(id);
ViewData["TotalPrice"] = obj.discountPrice;
ViewData["currentuser"] = CurrentUser.Username;
ViewData["discount"] = obj.discount;
return View(objlist);
} private void GetSupplierCompanyInfo(string id)
{
string suppliercontactperson1 = "";
string supplierName = "";
string supplierpaymentType = "";
string suppliertel = "";
string supplierfax = "";
string supplierOrderNo = "";
GetSupplierinfo(id, out suppliercontactperson1, out supplierName, out supplierpaymentType, out suppliertel, out supplierfax, out supplierOrderNo); string CompayName = "";
string address = "";
string tel = "";
string fax = "";
string homepage = "";
string email = "";
GetCompanyAddres(out CompayName, out address, out tel, out fax, out homepage, out email);
} #region 从数据库获取合约的信息条款
private void GetSupplierinfo(string id, out string suppliercontactperson1, out string supplierName, out string supplierpaymentType, out string suppliertel, out string supplierfax, out string supplierOrderNo)
{
OProcessRequisition objOrderApply = objOProcessRequisitionRepository.GetOneRecord(id);
string strSupplierid = objOrderApply.supplierID;
Supplier objsupplier = new Supplier();
if (!string.IsNullOrEmpty(strSupplierid))
objsupplier = objSupplierRepository.GetOneRecord(strSupplierid); suppliercontactperson1 = objsupplier.contactperson1;
supplierName = objsupplier.supplierName;
supplierpaymentType = objsupplier.paymentType + ";税率:" + objsupplier.taxRate;
suppliertel = objsupplier.tel;
supplierfax = objsupplier.fax;
supplierOrderNo = objOrderApply.contractNO; ViewData["strcontactperson1"] = objsupplier.contactperson1;
ViewData["strsupplierName"] = objsupplier.supplierName;
ViewData["paymentType"] = objsupplier.paymentType;
ViewData["strtel"] = objsupplier.tel;
ViewData["strfax"] = objsupplier.fax;
ViewData["OrderNo"] = objOrderApply.contractNO; IList<OrderCond> objordercond = objOrderCondRepository.GetAll(" from OrderCond where TypeNo=1").OrderBy(o => o.SortId).ToList();
var objplaymenthod = objordercond.FirstOrDefault(o => o.SortId ==);
var obj = objplaymenthod;
objordercond.Remove(objplaymenthod);
obj.CondContent = objplaymenthod.CondContent.Replace(":", "").Replace(":", "") + ":" + objsupplier.paymentType + ";税率:" + objsupplier.taxRate;
objordercond.Insert(, obj);
ViewData["allcond"] = objordercond;
}
#endregion #region 获取供应商的详细信息
private void GetCompanyAddres(out string CompayName, out string address, out string tel, out string fax, out string homepage, out string email)
{
var model = objCompayRepositoryRepository.GetAll();
CompayName = "";
address = "";
tel = "";
fax = "";
homepage = "";
email = "";
if (model.Count > )
{
CompayName = model[].CompayName;
address = model[].address;
tel = model[].tel;
fax = model[].fax;
homepage = model[].homepage;
email = model[].email;
ViewData["companyname"] = model[].CompayName;
ViewData["address"] = model[].address;
ViewData["tel"] = model[].tel;
ViewData["fax"] = model[].fax;
ViewData["homepage"] = model[].homepage;
ViewData["email"] = model[].email;
}
}
#endregion }
}
JS 打印报表的更多相关文章
- js 打印
关于js打印很简单的一段代码 function doPrint() { var newWindow = window.open("打印窗口", "_blank" ...
- js打印html中的内容
js打印方法 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www. ...
- js打印Iframe中的内容,并且不需要预览。
js打印Iframe中的内容,并且不需要预览 js代码如下: <script type="text/javascript" language="Javascript ...
- C# WPF打印报表
前天我的一个同学由于打印报表而苦恼,所以就介绍了一下WPF的打印报表,希望能帮助到大家. 展示报表 1. 首先新建项“报表”,选定项目,右击,点击“添加”->“新建项”->“报表”
- js打印
js打印,其实是打印当前页面的内容,是调用 系统的js方法,来弹出 打印设置窗口,用法很简单. window.print()就行,有的考虑到 浏览器兼容性问题,会用到document.execComm ...
- js打印保存用户输入的内容
在用js打印局部页面时,遇到用户新输入的内容没能打印出来,经过观察,发现我采用的js打印方法是读取页面源代码,而用户输入的内容如果不将其写入到页面源代码中去,是打印不出来的,下面是我的解决方法: // ...
- 使用jquery.PrintArea.js打印网页的样式问题
在使用jquery.PrintArea.js打印局部网页样式的时候,发现样式打印不出来,在网上找了好多资料,整理一下分享给大家 一.先看看css的引用文件方式 1.直接在内部的元素中使用”style” ...
- js打印页面指定区域,并去掉页眉上的时间和请求路径
需要通过js打印指定页面的内容 <style media=print type="text/css"> .noprint{visibility:hidden} < ...
- 利用JS打印质数
我爱撸码,撸码使我感到快乐!大家好,我是Counter,今天非常愉快,没有前几天的相对比较复杂的逻辑思维在里面,今天来写写,利用JS打印质数,基本上很多面试,会很经常的考到.那废话不多说,直接上代码: ...
随机推荐
- Oracle监听器—静态注册
注册就是将数据库作为一个服务注册到监听程序.客户端不需要知道数据库名和实例名,只需要知道该数据库对外提供的服务名就可以申请连接到数据库.这个服务名可能与实例名一样,也有可能不一样. 注册分: 1. 静 ...
- Xubuntu 安装mentohust
对于路由器上网到用户来说,自动分配IP上网。 对于校园网用户,首先下载mentohust_0.3.4-1_i386.deb,双击安装程序 然后在命令窗口中输入sudo -s 密码:user来获得roo ...
- EasyUI + EF + MVC4 后台截图
到目前完成的页面截图,完成了增删改查几项功能的技术测试,在解决几个小问题,就重新设计结构开始一个完整的后台开发,坚持用博客和云笔记记录开发过程.
- 【BZOJ3196】Tyvj 1730 二逼平衡树
Description 您需要写一种数据结构(可参考题目标题),来维护一个有序数列,其中需要提供以下操作:1.查询k在区间内的排名2.查询区间内排名为k的值3.修改某一位值上的数值4.查询k在区间内的 ...
- 关于java中sizeof的问题
因为java没有提供现成的函数去计算对象的内存空间,不过可以用大量产生某个对象然后计算平均值的方法近似获得该对象占用的内存. 虽然这种方法不是很准,但是也在一定程度上计算出来了对象所占用的内存空间,下 ...
- java小提示:标示符常见命名规则、常用ASCII
标示符常见命名规则: A:包:全部小写B:类或者接口:首字母大写:StudentC:方法或者接口:首字母小写,第二个单词开始开始,每个单词首字母大写:studentAgeD:常量:全部大写,多个单词之 ...
- 5.3:从bean的实例中获取对象
5.3 从bean的实例中获取对象 在getBean方法中,getObjectForBeanInstance是个高频率使用的方法,无论是从缓存中获得bean还是根据不同的scope策略加载bean. ...
- Recommender Systems协同过滤
第一部分是学习ID3时候积累的. 一.以前写的基础知识 1.信息:是用来消除不确定性的度量,信息量的大小,由所消除的不确定性的大小来计量(香农). 2.由于不确定性是由随机性引起的,所以用概率来描述和 ...
- 浏览器对象模型(BOM)
BOM结构 用户浏览网页的时候,浏览器会自动创建一些对象,这些对象存放着浏览器窗口的属性和相关信息,也就是大家熟称的BOM.浏览器对象模型是一个层次化的对象集,我们可以通过window对象访问所有对象 ...
- ZOJ 3778 Talented Chef
题目链接 题意 : 这个人需要做n道菜,每道菜Ai步,他可以同时做M道不同的菜的其中一步,问你最少需要多少时间能做完所有的菜. 思路 : 这个题比赛的时候禁锢思路了,根本没想出来,就是当M > ...