//uncomplete // get filedetail info public void AddOrUpdate(TableMapping tableMapping, IDataRecord record, int isSynced = 1) { var reportManager = new ReportManager(); var fileOrder = reportManager.GetFileOrder(); var fileSize = string.Format("{0:N1}k", Convert.ToDouble(record["RES_FILE_SIZE"]) / 1024); var fileName = record["RES_TITLE"].ToString(); var originalFilePath = record[tableMapping.PathColumn].ToString().Replace(@"\", "/"); var subDirectoryPath = originalFilePath.Substring(0, originalFilePath.LastIndexOf("/")); var filePath = subDirectoryPath.IndexOf("/") == 0 ? string.Format("{0}{1}", tableMapping.DestinationFilePath, subDirectoryPath) : string.Format("{0}/{1}", tableMapping.DestinationFilePath, subDirectoryPath); var phisicalPath = filePath.Replace("/", "|").Replace("|RR", ""); DateTime uploadTime; if (!DateTime.TryParse(record["RES_PUBL_DATE"].ToString(), out uploadTime)) { uploadTime = DateTime.Now; } var paras = new OracleParameter[19]; paras[0] = new OracleParameter("I_RES_ID", OracleType.Number) { Value = record["RES_ID"] }; paras[1] = new OracleParameter("I_CCXEID", OracleType.DateTime) { Value = record["CCXEID"] }; paras[2] = new OracleParameter("I_RES_FILE_PATH", OracleType.VarChar) { Value = record["RES_FILE_PATH"] }; paras[3] = new OracleParameter("I_ISSYNCED", OracleType.Number) { Value = isSynced }; paras[4] = new OracleParameter("I_FILETYPECODE", OracleType.VarChar) { Value = FileCode }; paras[5] = new OracleParameter("I_FILENAMECN", OracleType.NVarChar, 500) { Value = fileName }; paras[6] = new OracleParameter("I_FILENAMEEN", OracleType.NVarChar, 500) { Value = fileName }; paras[7] = new OracleParameter("I_UPLOADDATE", OracleType.DateTime) { Value = uploadTime }; paras[8] = new OracleParameter("I_REPORTDATE", OracleType.DateTime) { Value = uploadTime }; paras[9] = new OracleParameter("I_AUTHOR", OracleType.VarChar) { Value = record["RESER_NAME"] }; paras[10] = new OracleParameter("I_ISVALID", OracleType.Number) { Value = 1 }; paras[11] = new OracleParameter("I_EXTENSION", OracleType.VarChar) { Value = Path.GetExtension(record["RES_FILE_PATH"].ToString().Substring(1)) }; paras[12] = new OracleParameter("I_INSTITUTIONINFOCODE", OracleType.VarChar) { Value = InstitutionCode }; paras[13] = new OracleParameter("I_FILESIZE", OracleType.NVarChar) { Value = fileSize }; paras[14] = new OracleParameter("I_FILEORDER", OracleType.VarChar) { Value = fileOrder }; paras[15] = new OracleParameter("I_COMMENTS", OracleType.NVarChar, 500) { Value = "" }; paras[16] = new OracleParameter("I_OPERATORS", OracleType.NVarChar) { Value = "" }; paras[17] = new OracleParameter("I_BUSINESSTYPE", OracleType.VarChar) { Value = BusinessCode }; paras[18] = new OracleParameter("I_PHYSICALPATH", OracleType.NVarChar) { Value = phisicalPath }; DBHelper.ExecuteStorageWithoutRevalue("RES_INFO_DATA_Update", paras); }
public bool InsertReportToService(EmailInfo info, StringBuilder sb) { var md5 = ReportManager.MD5_Hash(info.CurrentAttrName); //处理业务 if (FileExists(md5)) { sb.Append(string.Format("Email: {0}, attachment name: {1} duplicated with {2}. synced successfully \n", info.Ename, info.CurrentAttrName, md5)); return(true); } var fileDetail = new FileDetail(); fileDetail.InstitutionCode = GetInstitutionCode(info.Ename); fileDetail.FileOrder = GetFileOrder(); fileDetail.Author = ""; fileDetail.Operator = ""; if (fileDetail.InstitutionCode == "EOthers") { sb.Append("[ email:" + info.Ename + " doesn't exist in EMAILKEYWORDS:] \n"); } string filesize = string.Empty; byte[] fileData = GetFileData(info.CurrentAttrName, sb, out filesize); fileDetail.FileSize = filesize; DateTime dt = DateTime.Parse(info.Etime); dt = DateTime.SpecifyKind(dt, DateTimeKind.Utc); dt = TimeZoneInfo.ConvertTime(dt, TimeZoneInfo.Local); fileDetail.UploadTime = dt; fileDetail.CreateTime = dt.ToString("yyyy-MM-dd HH:mm:ss"); string ext = Path.GetExtension(info.CurrentAttrName).Substring(1); fileDetail.Ext = ext; string attachName = GetFileName(info.CurrentAttrName); string attachConfigName = string.Empty; //match attachName if (Exists(attachName, fileDetail.InstitutionCode, out attachConfigName)) { TranslateResult tranalate = Translate(attachConfigName); if (tranalate.BusinessCode == "EOthers" && tranalate.FileCode == "EOthers") { return(false); } else { if (IsChineseOrEnglish(attachConfigName)) { fileDetail.FileNameCN = attachConfigName; fileDetail.FileNameEN = tranalate.Translate; } else { fileDetail.FileNameEN = attachConfigName; fileDetail.FileNameCN = tranalate.Translate; } } //if email is not exists ,but input is exists ,use input to find institutioncode, most for @ccb.com. yy 20141223 if (fileDetail.InstitutionCode.Equals("EOthers") && !fileDetail.InstitutionCode.Equals(tranalate.InsititutionCode)) { fileDetail.InstitutionCode = tranalate.InsititutionCode; } fileDetail.IsValid = tranalate.IsValid; fileDetail.BusinessCode = tranalate.BusinessCode; fileDetail.FileCode = tranalate.FileCode; } else { return(false); } var result = SaveResearchReport(fileDetail, fileData, md5); if (result) { sb.Append(string.Format("Email: {0}, attachment name: {1}, fileId: {2} has synced successfully \n", info.Ename, attachName, fileDetail.FileId)); } return(result); }