public void SaveMessage() { var msg = new Message(MessageText, Subject); if (Attachment != null && Attachment.Any()) { msg.AttachmentsPath = Guid.NewGuid(); Attachment.ForEach(a => a.PathName = msg.AttachmentsPath.ToString()); msg.Attachments = Attachment; } MessageManagementService.SaveMessage(msg); if (ToAdmin) { var admin = UserManagementService.GetAdmin(); var userMsg = new UserMessages(admin.Id, FromId, msg.Id); MessageManagementService.SaveUserMessages(userMsg); } else { foreach (var recipient in Recipients) { var userMsg = new UserMessages(recipient, FromId, msg.Id); MessageManagementService.SaveUserMessages(userMsg); } } }
private void GenerateCover(string projectId, string refTableName) { string coverPath = string.Empty; string coverName = "Cover"; string coverTempPath = SiteFilePath.UploadFiles_DIRECTORY + "\\" + Guid.NewGuid() + ".xlsx"; string coverExtention = Path.GetExtension(coverTempPath); switch (refTableName) { case "MajorLeaseChangePackage": coverPath = SiteFilePath.Template_DIRECTORY + "\\" + SiteFilePath.MajorLeaseChangeCove_Template; var majorLeaseChangePackage = MajorLeaseChangePackage.GetMajorPackageInfo(projectId); majorLeaseChangePackage.GenerateCoverEexcel(coverPath, coverTempPath); break; case "ReimagePackage": var rmgPackage = ReimagePackage.Get(projectId); if (rmgPackage == null) { return; } if (!Attachment.Any(i => i.TypeCode == "Cover" && i.RefTableName == ReimagePackage.TableName && i.RefTableID.ToString() == rmgPackage.Id.ToString())) { var reimageInfoEntity = ReimageInfo.GetReimageInfo(projectId); //生成cover文件 coverPath = SiteFilePath.Template_DIRECTORY + "\\" + SiteFilePath.Store_Reimage_Cover_Template; var store = StoreBasicInfo.FirstOrDefault(e => e.StoreCode == reimageInfoEntity.USCode); File.Copy(coverPath, coverTempPath); var excelOutputDirector = new ExcelDataInputDirector(new FileInfo(coverTempPath), ExcelDataInputType.ReimageCover); var inputInfo = new ExcelInputDTO { Region = store.Region, Province = store.ProvinceENUS, City = store.CityENUS, StoreName = store.NameENUS, USCode = reimageInfoEntity.USCode, OpenDate = store.OpenDate }; excelOutputDirector.Input(inputInfo); var coverItem = new Attachment(); coverItem.Name = coverName + coverExtention; coverItem.InternalName = Path.GetFileName(coverTempPath); coverItem.RefTableName = ReimagePackage.TableName; coverItem.RefTableID = rmgPackage.Id.ToString(); coverItem.RelativePath = "//"; coverItem.Extension = coverExtention; coverItem.CreateTime = DateTime.Now; coverItem.TypeCode = coverName; coverItem.CreatorID = ClientCookie.UserCode; coverItem.RequirementId = AttachmentRequirement.FirstOrDefault(e => e.FlowCode == FlowCode.Reimage_Package && e.NameENUS == "Cover").Id; coverItem.CreatorNameENUS = ClientCookie.UserNameENUS; coverItem.CreatorNameZHCN = ClientCookie.UserNameZHCN; using (FileStream stream = new FileStream(coverTempPath, FileMode.Open)) { coverItem.Length = (int)stream.Length; } Attachment.SaveSigleFile(coverItem); } break; case "TempClosurePackage": var tempClosurePackage = TempClosurePackage.Get(projectId); if (tempClosurePackage == null) { return; } if (!Attachment.Any(i => i.TypeCode == "Cover" && i.RefTableName == tempClosurePackage.TableName && i.RefTableID.ToString() == tempClosurePackage.Id.ToString())) { var tempClosureInfoEntity = TempClosureInfo.Get(projectId); //生成cover文件 coverPath = SiteFilePath.Template_DIRECTORY + "\\" + SiteFilePath.Store_TempClosure_Cover_Template; var store = StoreBasicInfo.FirstOrDefault(e => e.StoreCode == tempClosureInfoEntity.USCode); File.Copy(coverPath, coverTempPath); var excelOutputDirector = new ExcelDataInputDirector(new FileInfo(coverTempPath), ExcelDataInputType.TempClosureCover); var inputInfo = new ExcelInputDTO { StoreNameEN = store.NameENUS, USCode = tempClosureInfoEntity.USCode, City = store.CityENUS, Market = store.MarketENUS, ActualCloseDate = tempClosureInfoEntity.ActualTempClosureDate.ToString("yyyy-MM-dd") }; excelOutputDirector.Input(inputInfo); var coverItem = new Attachment(); coverItem.Name = coverName + coverExtention; coverItem.InternalName = Path.GetFileName(coverTempPath); coverItem.RefTableName = tempClosurePackage.TableName; coverItem.RefTableID = tempClosurePackage.Id.ToString(); coverItem.RelativePath = "//"; coverItem.Extension = coverExtention; coverItem.CreateTime = DateTime.Now; coverItem.TypeCode = coverName; coverItem.CreatorID = ClientCookie.UserCode; //coverItem.RequirementId = AttachmentRequirement.FirstOrDefault(e => e.FlowCode == FlowCode.TempClosure_ClosurePackage && e.NameENUS == "Cover").Id; coverItem.CreatorNameENUS = ClientCookie.UserNameENUS; coverItem.CreatorNameZHCN = ClientCookie.UserNameZHCN; using (FileStream stream = new FileStream(coverTempPath, FileMode.Open)) { coverItem.Length = (int)stream.Length; } Attachment.SaveSigleFile(coverItem); } break; case "ClosurePackage": var closurePackage = ClosurePackage.Get(projectId); if (closurePackage == null) { return; } if (!Attachment.Any(i => i.TypeCode == "Cover" && i.RefTableName == ClosurePackage.TableName && i.RefTableID.ToString() == closurePackage.Id.ToString())) { var closureInfoEntity = ClosureInfo.GetByProjectId(projectId); //生成cover文件 coverPath = SiteFilePath.Template_DIRECTORY + "\\" + SiteFilePath.Store_Closure_Cover_Template; var store = StoreBasicInfo.FirstOrDefault(e => e.StoreCode == closureInfoEntity.USCode); File.Copy(coverPath, coverTempPath); var excelOutputDirector = new ExcelDataInputDirector(new FileInfo(coverTempPath), ExcelDataInputType.ClosureCover); var inputInfo = new ExcelInputDTO { StoreNameEN = store.NameENUS, USCode = closureInfoEntity.USCode, City = store.CityENUS, Market = store.MarketENUS, ActualCloseDate = closureInfoEntity.ActualCloseDate.Value.ToString("yyyy-MM-dd") }; excelOutputDirector.Input(inputInfo); var coverItem = new Attachment(); coverItem.Name = coverName + coverExtention; coverItem.InternalName = Path.GetFileName(coverTempPath); coverItem.RefTableName = ClosurePackage.TableName; coverItem.RefTableID = closurePackage.Id.ToString(); coverItem.RelativePath = "//"; coverItem.Extension = coverExtention; coverItem.CreateTime = DateTime.Now; coverItem.TypeCode = coverName; coverItem.CreatorID = ClientCookie.UserCode; //coverItem.RequirementId = AttachmentRequirement.FirstOrDefault(e => e.FlowCode == FlowCode.TempClosure_ClosurePackage && e.NameENUS == "Cover").Id; coverItem.CreatorNameENUS = ClientCookie.UserNameENUS; coverItem.CreatorNameZHCN = ClientCookie.UserNameZHCN; using (FileStream stream = new FileStream(coverTempPath, FileMode.Open)) { coverItem.Length = (int)stream.Length; } Attachment.SaveSigleFile(coverItem); } break; } }