ERP系统上传文档信息下载(十八)
下载的公用方法:
/// <summary>
/// 下载文档
/// </summary>
/// <param name="TableName">查询表</param>
/// <param name="column">查询列</param>
/// <param name="condition">查询条件</param>
/// <returns>byte[]</returns>
public static byte[] GetDownDocumet(string TableName,string column,string condition)
{
long datalen = 0;
System.Data.SqlClient.SqlDataReader reader= SqlComm.GetDataReaderByCondition(TableName, column, condition);
byte[] data = null;
try
{
while (reader.Read())
{
//读取数据的长度
datalen = reader.GetBytes(0, 0, data, 0, 1);
//分配缓区
data = new byte[datalen];
//读取数据
datalen = reader.GetBytes(0, 0, data, 0, (int)datalen);
}
reader.Close();
return data;
}
catch (Exception ex)
{
return null;
} }
下载:
获取文档二进制流:
filecontent = Comm.GetDownDocumet("BioCrmCorrelationDocument", "Content", " DocumentID=" + id);
下载的具体步骤:
protected void lbtndown_Click(object sender, EventArgs e)
{
//创建弹出式Windows下载窗体
Response.AddHeader("Content-Disposition","attachment;filename="+HttpUtility.UrlEncode(this.lbName.Text));
//把二进制数组写入Http输出流
Response.BinaryWrite(filecontent);
//想当前客户端缓冲区输出
Response.Flush();
//停止执行
Response.End(); }
修改的后台代码:
static byte[] filecontent = null;
private void Pageinfoband()
{
if (Request.QueryString["ID"] != null)
{
string id = Request.QueryString["ID"].ToString();
BioCrmCorrelationDocumentBLL dbll = new BioCrmCorrelationDocumentBLL();
DocumentInfoView dv = new DocumentInfoView();
dv=dbll.getDocumentViewByID(id);
this.txtsubJect.Text = dv.Subject;
this.txtRemark.Text = dv.Remark;
this.lbType.Text = dv.Type;
this.txtCustomerID.Text = dv.CustomerID.ToString();
this.ddlLevel.SelectedItem.Text = dv.DocumentLevel;
this.cbDelete.Checked = dv.DeleteState;
this.lbExtendName.Text = dv.ExetendName;
this.lbName.Text = dv.Name;
filecontent = Comm.GetDownDocumet("BioCrmCorrelationDocument", "Content", " DocumentID=" + id);
this.lbSize.Text = dv.DocumentSize.ToString();
this.txtUserName.Text = dv.UserID.ToString();
this.hf_CustomerDocumentID.Value = dv.CustomerDocumentID.ToString();
lbUpdateTime.Text = dv.UploadTime.ToString(); }
} /// <summary>
/// 保存编辑内容
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnSubmit_Click(object sender, EventArgs e)
{
BioCrmCorrelationDocument document = new BioCrmCorrelationDocument();
document.DocumentID =int.Parse( Request.QueryString["ID"].ToString());
document.Subject = this.txtsubJect.Text; document.UserID =int.Parse(Session["Userid"].ToString());
document.Remark = this.txtRemark.Text;
document.DocumentLevel = this.ddlLevel.SelectedValue; if (this.FileUpload1.HasFile)
{
document.Name = DateTime.Now.ToString("yyyyMMdd hhmmss") + this.FileUpload1.FileName;
document.Content = this.FileUpload1.FileBytes;
document.Type=this.FileUpload1.PostedFile.ContentType;
document.UploadTime = DateTime.Now;
document.DocumentSize = this.FileUpload1.FileContent.Length;
document.ExetendName = System.IO.Path.GetExtension(this.FileUpload1.FileName);
}
else
{
document.Name = this.lbName.Text;
document.Content = filecontent;
document.Type = this.lbType.Text;
document.UploadTime =Convert.ToDateTime( lbUpdateTime.Text);
document.DocumentSize =long.Parse(this.lbSize.Text);
document.ExetendName = this.lbExtendName.Text;
} //物理文件上传
string filepath = Server.MapPath(@"\Files\CRMFiles\");
if (Comm.FileExists(filepath + this.lbName.Text))
{
Comm.FileDelete(filepath + this.lbName.Text);
} Comm.FileUpLoad(this.FileUpload1, filepath, document.Name); BioCrmCorrelationDocumentBLL documentbll = new BioCrmCorrelationDocumentBLL();
//文档信息添加 包括文件上传(转换为二进制数组后上传)
int count= documentbll.BioCrmCorrelationDocumentUpdate(document);
//文档信息添加成功
if (count != 0)
{
BioCrmCustomerDocument customerdocument = new BioCrmCustomerDocument();
customerdocument.CustomerDocumentID = int.Parse(this.hf_CustomerDocumentID.Value);
customerdocument.CustomerID = int.Parse(this.txtCustomerID.Text);
customerdocument.DeleteState =cbDelete.Checked;
customerdocument.DocumentID = document.DocumentID;
BioCrmCustomerDocumentBLL customerdocumentbll = new BioCrmCustomerDocumentBLL();
int count1= customerdocumentbll.BioCrmCustomerDocumentUpdate(customerdocument);
if (count1 == 0)
{
SqlComm.DeleteTableByCondition("BioCrmCorrelationDocument", "where DocumentID=" + document.DocumentID);
}
else
{
Response.Redirect("DocumentListShow.aspx");
}
}
}
不同角色查询不同的文档:
/// <summary>
/// 查询所有联系人信息
/// </summary>
private void getallPageList()
{
string id = Session["Userid"].ToString();
condition = " and UserID=" + id;
if (UserLogin.user.RoleId == 8)
{
condition = " or UserID !=" + id;
}
this.AspNetPager1.RecordCount = SqlComm.getDataCountByCondition("dbo.View_DoucmentInfo", condition);
this.AspNetPager1.PageSize = pagesize;
this.GridView1.DataSource = SqlComm.getDataByPageIndex("dbo.View_DoucmentInfo", "*", "DocumentID", condition, pageindex, pagesize);
this.GridView1.DataBind();
}
ERP系统上传文档信息下载(十八)的更多相关文章
- 百度大脑UNIT3.0解读之对话式文档问答——上传文档获取对话能力
在日常生活中,用户会经常碰到很多复杂的规章制度.规则条款.比如:乘坐飞机时,能不能带宠物上飞机,3岁小朋友是否需要买票等.在工作中,也会面对公司多样的规定制度和报销政策.比如:商业保险理赔需要什么材料 ...
- 跟我学SharePoint 2013视频培训课程——怎样创建文档库并上传文档(8)
课程简介 第8天,怎样在SharePoint 2013怎样创建文档库并上传文档. 视频 SharePoint 2013 交流群 41032413
- 自记录:git如何上传文档到git@osc
前提: D盘有gitserver文件夹 双击桌面的git.exe文件,打开git命令窗口 输入cd d: 命令进入D盘 输入cd gitserver命令进入 找到git@osc自己参与项目里的htt ...
- 开源ERP系统Odoo搭建文档
本文参考链接地址: https://devecho.com/v/209/ https://www.cnblogs.com/wxylog/p/6386974.html 什么是Odoo 为什么选择Odoo ...
- SharePoint 上传文档提示别人迁出
前言 我们在使用SharePoint文档库的时候,经常会遇到文档被别人迁出,自己无法修改的情况.这时候,我们最好的办法就是找到那个迁出的人,怼他!如果,他已经离职了,我们无法找到,那么,就请继续往瞎看 ...
- HDFS设计思路,HDFS使用,查看集群状态,HDFS,HDFS上传文件,HDFS下载文件,yarn web管理界面信息查看,运行一个mapreduce程序,mapreduce的demo
26 集群使用初步 HDFS的设计思路 l 设计思想 分而治之:将大文件.大批量文件,分布式存放在大量服务器上,以便于采取分而治之的方式对海量数据进行运算分析: l 在大数据系统中作用: 为各类分布式 ...
- linux系统上传下载命令rz和sz的教程
(一)安装方法汇总(注意:一下命令如果没有权限的需要在每个命令前面加一个sudo) 1.安装方法(推荐) sudo yum install lrzsz 2.在安装Linux系统时选中“DialupNe ...
- SecureCRT上传、下载文件 使用rz【上传】& sz【下载】命令
首先安装:apt-get install lrzsz SecureCRT这款SSH客户端软件同时具备了终端仿真器和文件传输功能.比ftp命令方便多了,而且服务器不用再开FTP服务了.rz,sz是便是L ...
- <源代码>FTPclient追加方式上传自己定义信息
实现功能:向FTPserver以追加方式上传自己定义信息(例程中为:2014-10-08 13:47:15 test.) 源代码下载(免积分):http://download.csdn.net/det ...
随机推荐
- MySQL学习笔记_1_MySQL数据库管理系统概述
1. MySQL架构 C/S: client / server架构 MySQL DBMS(Data Bank Management System): 数据库管理系统 客户端 <---> 服 ...
- javasE学习笔记:关键字super的使用
/* super 的作用: 1 . super可以在子类中引用父类的成员,通过 .的方式和属性.this相对应. 2. 在子类的构造方法中可以可使用super(参数列表)语句调用父类的构造方法 3. ...
- placehold.it-在线图片生成器(转载)
做网站的时候 如果 有的产品等客户没有上传图片,可以用这个网站生成的图片 并配以文字进行图片的占位 以免造成页面的空挡或者页面错位等 原文地址:http://www.cnblogs.com/xumen ...
- Java 集合系列 01 总体框架
java 集合系列目录: Java 集合系列 01 总体框架 Java 集合系列 02 Collection架构 Java 集合系列 03 ArrayList详细介绍(源码解析)和使用示例 Java ...
- 报错解决:No Hibernate Session bound to thread, and configuration does not allow creation of non-transactional one here
大概分析一般使用了注解才会报这方面的错 1.没有在spring的ApplicationContext.xml中开启注解事务 <!-- 开启注解事务 --> <tx:annotatio ...
- 使用window.navigator.userAgent属性判断浏览器类型及版本
使用window.navigator.userAgent属性判断浏览器类型及版本 2011-12-11 22:03:11 window.navigator.userAgent属性包含了浏览器类型.版本 ...
- Ubuntu 下Eclipse 安装SVN
如果尚未安装Eclipse,先安装:也可以直接下载Google提供的ADT Bundle. sudo apt-get install eclipse 安装Subversion sudo apt-get ...
- Shell脚本:使用rsync备份文件/目录
本文我们介绍一个shell脚本,用来使用rsync命令将你本地Linux机器上的文件/目录备份到远程Linux服务器上.使用该脚本会以交互的方式实施备份,你需要提供远程备份服务器的主机名/ip地址和文 ...
- LCD驱动 15-3
测试:1:make menuconfig去掉原来的驱动程序 Device Drivers ---> Graphics support ---> ...
- HDU 3336 扩展kmp
题目大意: 找到字符串中所有和前缀字符串相同的子串的个数 对于这种前缀的问题,通常通过扩展kmp来解决 其实吧这是我第一次做扩展kmp的题目,原来确实看过这个概念,今天突然做到,所以这个扩展kmp的模 ...