public ActionResult CreateDrawingSeries(FormCollection form) { try { int engineeringId = int.Parse(form["engineeringId"]); int drawingCatalogValue = int.Parse(form["drawingCatalogValue"]); int drawingProfessionValue = int.Parse(form["drawingProfessionValue"]); var blobFile = Request.Files["blobFile"]; string drawingSeriesName = form["drawingSeriesName"]; string fileSize = form["fileSize"]; string fileDescription = form["fileDescription"]; if (_engineeringFileService.Get(ef => ef.FileName == drawingSeriesName && ef.EngineeringId == engineeringId && ef.DrawingProfessionId == drawingProfessionValue) != null) { return(Json(new { Result = false, Message = "图纸名称重复" })); } if (blobFile != null && blobFile.ContentLength > 0) { var parameter = new UploadProjectFileParameterType(); var engineeringFile = new EngineeringFile(); engineeringFile.DrawingProfessionId = drawingProfessionValue; engineeringFile.DrawingCatalogId = drawingCatalogValue; engineeringFile.FileType = FileType.Drawing; //更新文件版本后来纪录最新的文件url engineeringFile.Description = fileDescription; engineeringFile.EngineeringId = engineeringId; engineeringFile.FileName = drawingSeriesName; engineeringFile.IsDistribution = false; engineeringFile.Status = FlowCode.Pre_DesignCompany_Uploaded; engineeringFile.UpLoadTime = DateTime.Now; engineeringFile.UploaderId = CurrentCustomer.Id; new EngineeringFileService().Insert(engineeringFile); parameter.Description = fileDescription; parameter.FileNameKey = "blobFile"; parameter.FileNameValue = blobFile.FileName; parameter.UploadStream = blobFile.InputStream; parameter.PostParameters.Add(new KeyValuePair <string, string>("versionNo", "1")); parameter.PostParameters.Add(new KeyValuePair <string, string>("fileSize", fileSize)); parameter.PostParameters.Add(new KeyValuePair <string, string>("drawingProfession", engineeringFile.DrawingProfessionId.ToString())); parameter.PostParameters.Add(new KeyValuePair <string, string>("drawingCatalog", engineeringFile.DrawingCatalogId.ToString())); FileVersion currentFile = new FileVersion(); DesignCompanyProjectManager designCompanyProjectManager = new DesignCompanyProjectManager(CurrentCustomer, engineeringFile, currentFile); designCompanyProjectManager.UploadBlob(parameter); return(Json(new { Result = true, Message = "上传成功" })); } return(Json(new { Result = false, Message = "表单数据异常" })); } catch (Exception ex) { return(Json(new { Result = false, Message = ex.Message })); } }
public ActionResult UpdateDrawingSeries(FormCollection form) { try { int engineeringFileId = int.Parse(form["engineeringfileid"]); int drawingCatalogId = int.Parse(form["drawingCatalogValue"]); int drawingProfessionId = int.Parse(form["drawingProfessionValue"]); var blobFile = Request.Files["blobFile"]; string drawingSeriesName = form["drawingSeriesName"]; string fileSize = form["fileSize"]; string fileDescription = form["fileDescription"]; var engineeringFile = _engineeringFileService.Get(ef => ef.Id == engineeringFileId); if (engineeringFile == null) { return(Json(new { Result = false, Message = "未找到项目文件" })); } if (engineeringFile.FileName != drawingSeriesName && _engineeringFileService.Get(ef => ef.FileName == drawingSeriesName && ef.EngineeringId == engineeringFile.Engineering.Id && ef.DrawingProfessionId == drawingProfessionId) != null) { return(Json(new { Result = false, Message = "图纸名称重复" })); } //更新图纸系列 engineeringFile.FileName = drawingSeriesName; engineeringFile.DrawingCatalogId = drawingCatalogId; engineeringFile.DrawingProfessionId = drawingProfessionId; _engineeringFileService.Update(engineeringFile); if (blobFile != null && blobFile.ContentLength > 0) { var parameter = new UploadProjectFileParameterType(); parameter.Description = fileDescription; parameter.FileNameKey = "blobFile"; parameter.FileNameValue = blobFile.FileName; parameter.UploadStream = blobFile.InputStream; var lastestDrawing = engineeringFile.FileVersions.OrderByDescending(fv => fv.UpLoadeTime).ToList() .FirstOrDefault(); string versionNo = lastestDrawing == null ? "1" : (int.Parse(lastestDrawing.VersionNo) + 1).ToString(); parameter.PostParameters.Add(new KeyValuePair <string, string>("versionNo", versionNo)); parameter.PostParameters.Add(new KeyValuePair <string, string>("fileSize", fileSize)); parameter.PostParameters.Add(new KeyValuePair <string, string>("drawingProfession", engineeringFile.DrawingProfessionId.ToString())); parameter.PostParameters.Add(new KeyValuePair <string, string>("drawingCatalog", engineeringFile.DrawingCatalogId.ToString())); FileVersion currentFile = new FileVersion(); DesignCompanyProjectManager designCompanyProjectManager = new DesignCompanyProjectManager(CurrentCustomer, engineeringFile, currentFile); designCompanyProjectManager.UploadBlob(parameter); return(Json(new { Result = true, Message = "更新,并上传成功" })); } return(Json(new { Result = true, Message = "更新成功" })); } catch (Exception ex) { return(Json(new { Result = false, Message = ex.Message })); } }