<%@ WebHandler Language="C#" Class="Richtext" %> using System; using System.Web; using System.Web.SessionState; using System.Linq; using Newtonsoft.Json; using System.Collections.Generic; using Curtain.DataAccess; using System.Data; public class Richtext : IHttpHandler, IReadOnlySessionState { public void ProcessRequest(HttpContext context) { context.Response.ContentType = "text/plain"; //上传文件 if (context.Request["m"].ToString() == "0") { string guid = Guid.NewGuid().ToString().Split('-')[0]; string filePath = "/mes/upload/" + DateTime.Now.ToString("yyyy-MM-dd"); System.IO.Directory.CreateDirectory(context.Server.MapPath(filePath)); string fileName = filePath + "/" + DateTime.Now.ToString("yyyy-MM-dd") + "-" + guid + "-" + context.Request.Files[0].FileName.Split('.')[0]; fileName += System.IO.Path.GetExtension(context.Request.Files[0].FileName); string diskFileName = context.Server.MapPath(fileName); if (System.IO.File.Exists(diskFileName)) System.IO.File.Delete(diskFileName); context.Request.Files[0].SaveAs(diskFileName); Dictionary result = new Dictionary(); result.Add("errno", 0); result.Add("data", new Dictionary() { {"url","http://172.18.32.32:9000/"+fileName } }); context.Response.Write(JsonConvert.SerializeObject(result, Formatting.Indented)); } //获取产品型号 if (context.Request["m"].ToString() == "getproductmodel") { using (IDataAccess conn = DataAccess.Create()) { string sqlStr = @"SELECT GOODSID AS ID, GOODSCODE FROM TP_MST_GOODS WHERE VALUEFLAG=1"; DataTable dt = conn.ExecuteDatatable(sqlStr); context.Response.Write(JsonConvert.SerializeObject(dt, Formatting.Indented)); } } //添加记录 if (context.Request["m"].ToString() == "add") { //获取前端传递的表单 var formData = context.Request.Form; using (IDataAccess conn = DataAccess.Create()) { if (formData["id"].ToString() != "") { conn.ExecuteNonQuery( " UPDATE TP_PM_QUALITYLIBRARY SET " + "VALUEFLAG=0 WHERE LIBRARYID=" + formData["id"].ToString()); } //创建记录 DataTable dt = conn.ExecuteDatatable(@"SELECT SEQ_PM_QUALITYLIBRARY_ID.nextval FROM dual"); int result = conn.ExecuteNonQuery(@" INSERT INTO TP_PM_QUALITYLIBRARY ( LIBRARYID,--总单ID LIBRARYNAME, --项目名称 GOODSID,--产品ID GOODSCODE,--产品编码(产品型 PARTICIPANTS,--参与人员 QUESTION,--问题 SOLUTION,--解决方式 SOLUTIONEFFECT,--解决效果 ANNEX,--项目相关资料(附件) ACCOUNTID,CREATEUSERID,UPDATEUSERID ) VALUES ( @LIBRARYID@, @LIBRARYNAME@, @GOODSID@, @GOODSCODE@, @PARTICIPANTS@, @QUESTION@, @SOLUTION@, @SOLUTIONEFFECT@, @ANNEX@, @ACCOUNTID@,@CREATEUSERID@,@UPDATEUSERID@ ) ", new CDAParameter("LIBRARYID", dt.Rows[0][0]), new CDAParameter("LIBRARYNAME", formData["name"]), new CDAParameter("GOODSID", formData["modelid"]), new CDAParameter("GOODSCODE", formData["modelname"]), new CDAParameter("PARTICIPANTS", formData["participants"]), new CDAParameter("QUESTION", formData["problem"]), new CDAParameter("SOLUTION", formData["solution"]), new CDAParameter("SOLUTIONEFFECT", formData["solutioneffect"]), new CDAParameter("ANNEX", formData["annex"]), new CDAParameter("ACCOUNTID", HttpContext.Current.Session["accountId"]), new CDAParameter("CREATEUSERID", HttpContext.Current.Session["userId"]), new CDAParameter("UPDATEUSERID", HttpContext.Current.Session["userId"])); context.Response.Write(JsonConvert.SerializeObject(result == 1 ? dt.Rows[0][0] : "false", Formatting.Indented)); } } //获取所有(单个记录) if (context.Request["m"].ToString() == "get") { //获取前端传递的表单 var formData = context.Request.Form; int id = formData["id"] != null ? int.Parse(formData["id"].ToString()) : 0; using (IDataAccess conn = DataAccess.Create()) { string sqlStr = "SELECT Q.*,U.USERNAME FROM TP_PM_QUALITYLIBRARY Q LEFT JOIN TP_MST_USER U ON Q.CREATEUSERID=U.USERID WHERE Q.VALUEFLAG=1"; if (id != 0) { sqlStr += "AND Q.LIBRARYID=" + id; } sqlStr += "ORDER BY q.CREATETIME DESC"; DataTable dt = conn.ExecuteDatatable(sqlStr); List> result = new List>(); for (int i = 0; i < dt.Rows.Count; i++) { Dictionary content = new Dictionary(); //id content.Add("id", dt.Rows[i]["LIBRARYID"].ToString()); //项目名称 content.Add("name", dt.Rows[i]["LIBRARYNAME"].ToString()); //产品型号id content.Add("modelid", dt.Rows[i]["GOODSID"].ToString()); //产品型号 content.Add("modelname", dt.Rows[i]["GOODSCODE"].ToString()); //参与人员 content.Add("participants", dt.Rows[i]["PARTICIPANTS"].ToString()); //问题 content.Add("problem", dt.Rows[i]["QUESTION"].ToString()); //解决方式 content.Add("solution", dt.Rows[i]["SOLUTION"].ToString()); //解决效果 content.Add("solutioneffect", dt.Rows[i]["SOLUTIONEFFECT"].ToString()); //附件 content.Add("annex", dt.Rows[i]["ANNEX"].ToString()); //创建时间 content.Add("createtime", dt.Rows[i]["CREATETIME"].ToString()); //创建人 content.Add("username", dt.Rows[i]["USERNAME"].ToString()); result.Add(content); } context.Response.Write(JsonConvert.SerializeObject(result, Formatting.Indented)); } } //删除文件 if (context.Request["m"].ToString() == "deletefile") { //获取前端传递的表单 var formData = context.Request.Form; int id = formData["id"] != null ? int.Parse(formData["id"].ToString()) : 0; using (IDataAccess conn = DataAccess.Create()) { int result = conn.ExecuteNonQuery(" UPDATE TP_PM_QUALITYLIBRARY SET ANNEX=null WHERE LIBRARYID=" + formData["id"].ToString()); context.Response.Write(JsonConvert.SerializeObject(result, Formatting.Indented)); } } } public bool IsReusable { get { return false; } } }