Files
43-VPSA-MES_Manage/submit/MESUpload.ashx
2026-06-08 17:14:28 +08:00

158 lines
6.2 KiB
Plaintext
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<%@ WebHandler Language="C#" Class="UploadHandler" %>
using System;
using System.Web;
using System.Data;
using System.Collections.Generic;
using System.Linq;
using System.IO;
using System.Net;
using System.Web.Services;
using System.Text;
using DataLinkMesWork;
using System.Data.SqlClient;
public class UploadHandler : IHttpHandler
{
private static string connectionString = System.Configuration.ConfigurationManager.AppSettings.GetValues("ConnectionString")[0].ToString();
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/plain";
string filePath = "../webpage/part";
filePath = HttpContext.Current.Server.MapPath(filePath);
string num = HttpContext.Current.Request["num"];
string tableName = HttpContext.Current.Request["tableName"];
string result = "";
bool isOK;
var stream = new StreamReader(context.Request.InputStream).ReadToEnd();
JsonData jsonData = JsonMapper.ToObject(stream);
//DataLink.LogJsonData(jsonData);
try
{
Guid guid = Guid.NewGuid();
string uid = guid.ToString().Replace("-", "").ToUpper();
HttpFileCollection files = context.Request.Files;
if (files.Count > 0)
{
for (int i = 0; i < files.Count; i++)
{
HttpPostedFile hpFile = files[0];
if (hpFile.ContentLength > 0)
{
string fileName = System.IO.Path.GetFileName(hpFile.FileName);
string suffix = fileName.Split(new Char[] { '.' })[1];
string name = fileName.Split(new Char[] { '.' })[0];
string sql = "insert into " + tableName + " (num, uid, name, suffix, 是否启用) values(" + num + ",'" + uid + "','" + name + "','" + suffix + "'," + '1' + ")";
isOK =DataLinkMesWork.DataLink.ExecuteNonQuery(sql);
//--业务代码 1
//-- 1 发货管理_附件
//-- 2 合同信息管理_履约保证金_履约保函
//-- 3 合同管理_文件路径
//-- 4 PDM_机床总图_文件列表
//-- 5 采购管理_采购发票_附件
//-- 6 车间采购管理_发票结算申请单
//-- 7 设备管理_设备监控_图片
//-- 8 车间生产管理_质检管理
//-- 9 人员管理_图片
//--10 tableName
//SET ANSI_NULLS ON
//GO
//SET QUOTED_IDENTIFIER ON
//GO
//ALTER PROCEDURE [dbo].[_文件存储_高精_增加]
// @业务代码 int,
// @文件标识 int,
// @文件名称 nvarchar(150),
// @文件后缀 nvarchar(50),
// @文件内容 varbinary(max)
// as
//SET NOCOUNT ON;
//INSERT INTO [dbo].[_文件存储_高精](业务代码,[文件标识],[文件名称],[文件后缀],[文件内容])
// VALUES(@业务代码,@文件标识,@文件名称,@文件后缀,@文件内容)
//isOK = SQLCommon.ExecuteNonQuery(sql, connectionString, out result);
//isOK = SQLCommon.ExecuteNonQuery(sql, connectionString, out result);
if (isOK)
{
try
{
filePath = filePath + "/" + uid + "." + suffix;
hpFile.SaveAs(filePath);
result = "[{ \"result\":\"1\"}]";
}
catch
{
}
}
else
{
result = "[{ \"result\":\"0\"}]";
}
try
{
//增加文件保存到数据库的功能
byte[]bytes = new byte[files[0].InputStream.Length];
files[0].InputStream.Read(bytes, 0, bytes.Length);
string procedureName = "_文件存储_高精_增加";
string errorMessage;
SqlParameter []thisParms = new SqlParameter[5];
thisParms[0] = new SqlParameter("@业务代码", 10);
thisParms[1] = new SqlParameter("@文件标识", uid);
thisParms[2] = new SqlParameter("@文件名称", name);
thisParms[3] = new SqlParameter("@文件后缀", suffix);
thisParms[4] = new SqlParameter("@文件内容", bytes);
DataLinkMesWork.DataLink.ExecuteStoredProcedure(procedureName, ref thisParms, out errorMessage);
if(DataLinkMesWork.DataLink.isBakup=="1")
{
DataLinkMesWork.DataLink.ExecuteNonQuery_Bakup(sql);
DataLinkMesWork.DataLink.ExecuteStoredProcedure_Bakup(procedureName, ref thisParms, out errorMessage);
}
}
catch
{
}
}
else
{
context.Response.Write(result);
}
}
}
}
catch (Exception ex)
{
result = "[{ \"result\":\"0\"}]";
}
context.Response.Write(result);
}
public bool IsReusable
{
get
{
return false;
}
}
}