using MESClassLibrary.BLL.BasicInfo;
using MESClassLibrary.EFModel;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Web;
using NPOI.SS.UserModel;
using NPOI.XSSF.UserModel;
namespace MESWebSite.HttpHandlers
{
///
/// PaintColorInfoHandler 的摘要说明
///
public class PaintColorInfoHandler : IHttpHandler
{
HttpRequest Request = null;
HttpResponse Response = null;
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/plain";
Request = context.Request;
Response = context.Response;
string method = Request.Params["method"];
switch (method)
{
case "QueryList":
QueryList();
break;
case "SaveInfo":
SaveInfo();
break;
case "DelInfo":
DelInfo();
break;
case "QueryExcel":
QueryExcel();
break;
default:
break;
}
}
public bool IsReusable
{
get
{
return false;
}
}
void QueryList()
{
string page = Request.Params["page"];
string pagesize = Request.Params["rows"];
string StockNo = Request.Params["StockNo"];
string Paint_No = Request.Params["Paint_No"];
if (string.IsNullOrEmpty(page))
{
page = "0";
}
if (string.IsNullOrEmpty(pagesize))
{
pagesize = "15";
}
PaintColorInfoBLL bll = new PaintColorInfoBLL();
Response.Write(bll.SearchInfoAll(page, pagesize, StockNo, Paint_No));
Response.End();
}
void SaveInfo()
{
string ID = Request.Params["ID"];
string Color = Request.Params["Color"];
string Paint_No = Request.Params["Paint_No"];
string StockNo = Request.Params["StockNo"];
PaintColorInfoBLL bll = new PaintColorInfoBLL();
tb_PaintColorInfo md = new tb_PaintColorInfo();
md.Color = Color;
md.Paint_No = Paint_No;
md.StockNo = StockNo;
if (ID == "0")
{
//新增
md.ID = Guid.NewGuid().ToString();
Response.Write(bll.AddInfo(md) == true ? "true" : "false");
}
else
{
//修改
md.ID = ID;
Response.Write(bll.UpdateInfo(md) == true ? "true" : "false");
}
Response.End();
}
void DelInfo()
{
string ID = Request.Params["ID"];
PaintColorInfoBLL bll = new PaintColorInfoBLL();
tb_PaintColorInfo md = new tb_PaintColorInfo();
md.ID = ID;
Response.Write(bll.DeleteInfo(md) == true ? "true" : "false");
Response.End();
}
void QueryExcel()
{
string StockNo = Request.Params["StockNo"];
string PaintNo = Request.Params["PaintNo"];
PaintColorInfoBLL bll=new PaintColorInfoBLL();
List> list = bll.SearchForExcel(PaintNo, StockNo);
XSSFWorkbook book = new XSSFWorkbook();
ISheet sheet = book.CreateSheet("Sheet1");
for (int i = 0; i < list.Count; i++)
{
IRow row = sheet.CreateRow(i);
for (int k = 0; k < list[i].Count; k++)
{
row.CreateCell(k).SetCellValue(list[i][k].ToString());
}
}
// 写入到客户端
MemoryStream ms = new MemoryStream();
book.Write(ms);
Response.AddHeader("Content-Disposition", string.Format("attachment; filename={0}.xlsx", DateTime.Now.ToString("yyyyMMddHHmmssfff")));
Response.BinaryWrite(ms.ToArray());
book = null;
ms.Close();
ms.Dispose();
}
}
}