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打印质数,基本上很多面试,会很经常的考到.那废话不多说,直接上代码: ...
随机推荐
- phpcmsV9中表单向导在js调用里日期控件在IE下报Calendar未定义的解决办法
最近在phpcmsV9里用表单向导弄个的提交表单,但用了日期和时间类型时,用 <script language='javascript' src='{APP_PATH}index.php?m ...
- uniquery 配合 mssql 自带存储过程实现分页
--使用系统存储过程实现的通用分页存储过程 -- 此过程原作者,应该是:邹健老前辈 CREATE PROC sp_PageView @sql ntext, --要执行的sql语句 , --要显示的页码 ...
- 深入理解jsavascript的作用域
一. JavaScript声明提前 在JavaScript中如果不创建变量,直接去使用,则报错: console.log(xxoo); // 报错:Uncaught ReferenceError: x ...
- WinForm控件选择器
jQuery和Css的控件选择器用起来非常畅快,相信用过的人都会有这种感觉,而WinForm则是通过Name来实现窗体中控件的选择,在选择单个控件的时候是很方便,但是当选择具有一类特征的控件时,则显得 ...
- Contest2037 - CSU Monthly 2013 Oct (problem A :Small change)
[题解]:二进制拆分 任意一个整数都可以拆分成 2^0 + 2^1 + 2^2 + 2^3 + ....+ m [code]: #include <iostream> #include & ...
- bnu 4353 删格游戏(博弈)
http://www.bnuoj.com/bnuoj/problem_show.php?pid=4353 [题意]:每次选择一个小格后,该小格的右上部分就全被删去了,且要求每次至少删去一个格子,选中左 ...
- TCP/IP协议原理学习笔记
昨天学习了杨宁老师的TCP/IP协议原理第一讲和第二讲,主要介绍了OSI模型,整理如下: OSI是open system innerconnection的简称,即开放式系统互联参考模型,它把网络协议从 ...
- PAT-乙级-1002. 写出这个数 (20)
1002. 写出这个数 (20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 读入一个自然数n,计算其各位数字 ...
- uva 437 hdu 1069
dp 将石块按三个面存入队列 按底面积排序 dp就最大高度 按嵌套矩形最长路做做法 #include <iostream> #include <cstdio> #inc ...
- NIO的Selector
参考自 Java NIO系列教程(六) Selector Java-NIO-Selector java.nio.channels.Selector NIO新功能Top 10(下) 出发点: 如何管理多 ...