public JsonResult Upload() { string rootPath = Server.MapPath("~/Upload"); string path = Request.Form["path"]; bool replace = bool.Parse(Request.Form["replace"]); if (!string.IsNullOrEmpty(path)) { path = Fruit.Data.FruitExpression.Replace(path); var targetPath = Server.MapPath("~/Upload/" + path); if (!System.IO.Directory.Exists(targetPath)) { System.IO.Directory.CreateDirectory(targetPath); } } string saveDir = rootPath; string fileIdText = Request.Form["fileId"]; int fileId = 0; int.TryParse(fileIdText, out fileId); List <sys_file> files = new List <sys_file>(); foreach (var file in Request.Files.GetMultiple("file")) { if (file.ContentLength > 1) { var saveName = Guid.NewGuid().ToString() + System.IO.Path.GetExtension(file.FileName); var savePath = System.IO.Path.Combine(rootPath, path, saveName); file.SaveAs(savePath); files.Add(new sys_file { FileId = fileId, FileName = System.IO.Path.GetFileName(file.FileName), Path = "/Upload/" + path + "/" + saveName, CreateDate = DateTime.Now, CreatePerson = Fruit.Data.FruitExpression.Replace("{U.UserCode}") }); } } if (files.Count > 0) { // 需要进行保存操作 using (var db = new SysContext()) { if (fileId == 0) { fileId = new SysSerialServices().GetNewSerial(db, "sys_file"); } else if (replace) { db.Database.ExecuteSqlCommand("delete from sys_file where FileId = @FileId", new System.Data.SqlClient.SqlParameter("@FileId", fileId)); } var serial = db.Database.SqlQuery <int>("select top 1 Serial from sys_file where FileId = @FileId order by Serial desc", new System.Data.SqlClient.SqlParameter("@FileId", fileId)).FirstOrDefault(); foreach (var file in files) { file.FileId = fileId; file.Serial = ++serial; db.sys_file.Add(file); } db.SaveChanges(); } } return(Json(new { fileId, files })); }
public ActionResult SearchScheme(string pageCode, string method = "list") { var user = System.Web.HttpContext.Current.Session["sys_user"] as sys_user; var sss = new SysSerialServices(); object result = null; using (var db = new SysContext()) { switch (method) { case "list": if (user == null) { result = db.sys_searchScheme.Where(s => s.PageCode == pageCode).OrderBy(s => s.Title).Select(s => new { s.Id, s.Title, s.Data, deleable = false }).ToList(); } else { result = db.sys_searchScheme.Where(s => s.PageCode == pageCode && (s.CompCode == null || s.CompCode == user.CompCode)).OrderBy(s => s.Title).Select(s => new { s.Id, s.Title, s.Data, deleable = s.CompCode == user.CompCode && s.UserCode == user.UserCode }).ToList(); } break; case "add": if (user != null) { var ss = new sys_searchScheme { Id = sss.GetNewSerial(db, "sys_searchScheme"), CompCode = user.CompCode, UserCode = user.UserCode, PageCode = pageCode, Title = Request["title"], Data = Request["data"] }; db.sys_searchScheme.Add(ss); db.SaveChanges(); result = new { ss.Id, ss.Title, ss.Data, deleable = true }; } break; case "del": if (user != null) { var ss = db.sys_searchScheme.Find(int.Parse(Request["id"])); if (ss != null && ss.CompCode == user.CompCode && ss.UserCode == user.UserCode) { db.Entry(ss).State = EntityState.Deleted; db.SaveChanges(); result = true; } } break; } } return(new JsonNetResult(result)); }