//検索 public bool GetSentenceData(int userCD, int userGroupCD, out List <string[]> SentenceList, out string retErrMsg) { bool bRet = false; retErrMsg = ""; //エラーメッセージ用 SentenceList = new List <string[]>(); try { using (DBAcc clsDB = new DBAcc(DBRemote)) { // SQL StringBuilder sql = new StringBuilder("SELECT senM.*, userM.UserName "); sql.Append(" FROM SentenceMst senM, UserMst userM "); sql.Append(" WHERE senM.UserCD = @0 "); //selSql.Append(" WHERE (( PublicCD = 0 AND senM.UserCD = @0 ) "); //selSql.Append(" OR ( PublicCD = @1 ) OR ( PublicCD = -1 )) "); sql.Append(" AND userM.UserCD = senM.UserCD "); sql.Append(" ORDER BY SentenceName "); DbParamClass sqlDbParam = new DbParamClass(); sqlDbParam.Add(userCD); //sqlDbParam.Add(userGroupCD); // userGroupCDは使用しない DbParameter[] dbprms = sqlDbParam.GetDbParameter(clsDB); //string str = sql.ToString(); DbDataReader dr; clsDB.SqlQuery(sql.ToString(), dbprms, out dr); while (dr.Read()) { List <string> Sentence = new List <string>(); Sentence.Add(((int)dr["SentenceCD"]).ToString()); Sentence.Add((string)dr["SentenceValue1"]); Sentence.Add((string)dr["SentenceValue2"]); Sentence.Add(((int)dr["UserCD"]).ToString()); Sentence.Add((string)dr["SentenceName"]); Sentence.Add((string)dr["UserName"]); Sentence.Add(((int)dr["PublicCD"]).ToString()); SentenceList.Add(Sentence.ToArray()); } dr.Close(); bRet = true; } } catch (Exception ex) { retErrMsg = ex.Message; } return(bRet); }
public bool AutoLoginCheck(string UserCD, out List <string[]> userinfo, out string retErrMsg) { bool bRet = false; userinfo = new List <string[]>(); retErrMsg = ""; //エラーメッセージ用 try { using (DBAcc clsDB = new DBAcc(DBRemote)) { // SQL StringBuilder sql = new StringBuilder("SELECT mUser.* "); sql.Append(" FROM UserMst AS mUser "); sql.Append(" WHERE mUser.UserCD=@0"); DbParamClass sqlDbParam = new DbParamClass(); sqlDbParam.Add(int.Parse(UserCD)); DbParameter[] dbprms = sqlDbParam.GetDbParameter(clsDB); //string str = sql.ToString(); DbDataReader dr; clsDB.SqlQuery(sql.ToString(), dbprms, out dr); while (dr.Read()) { List <string> user = new List <string>(); user.Add((string)dr["LoginID"]); user.Add(((int)dr["UserCD"]).ToString()); user.Add((string)dr["UserName"]); user.Add(((int)dr["GroupCD"]).ToString()); userinfo.Add(user.ToArray()); bRet = true; } dr.Close(); } } catch (Exception ex) { retErrMsg = ex.Message; } return(bRet); }
//変更履歴の取得 public bool GetChangeHistory(int userCD, int SerialNo, string imagePath, out List <string[]> HistoryDataList, out List <string[]> ImageDataList, out string retErrMsg) { bool bRet = false; retErrMsg = ""; HistoryDataList = new List <string[]>(); // 変更履歴リスト ImageDataList = new List <string[]>(); // イメージデータリスト try { using (DBAcc clsDB = new DBAcc(DBRemote)) { // パラメータのセット DbParamClass sqlDbParam = new DbParamClass(); sqlDbParam.Add(SerialNo); DbParameter[] dbprms = sqlDbParam.GetDbParameter(clsDB); //読影履歴テーブルからデータ取得 StringBuilder sql = new StringBuilder("SELECT * FROM HistoryTbl "); sql.Append(" WHERE SerialNo = @0 and "); sql.Append(" ( ReportStatus = 2 "); sql.Append(" or "); sql.Append(" historyno in (select max(historyno) as historyno from historytbl where serialno = @0 and ReportStatus = 3 group by edition )"); sql.Append(" )"); sql.Append(" ORDER BY HistoryNo DESC"); //string str = sql.ToString(); DbDataReader dr; clsDB.SqlQuery(sql.ToString(), dbprms, out dr); //履歴テーブルにデータが存在する場合、データ取得 while (dr.Read()) { List <string> HistoryArray = new List <string>(); RsHistoryTbl rsHistoryTbl = new RsHistoryTbl(); // 読影テーブル rsHistoryTbl.SerialNo = (int)dr["SerialNo"]; // シリアル番号 rsHistoryTbl.HistoryNo = (int)dr["HistoryNo"]; // 読影番号 rsHistoryTbl.ReadDate = (string)dr["ReadDate"]; // 読影日 rsHistoryTbl.ReadTime = (string)dr["ReadTime"]; // 読影時刻 rsHistoryTbl.ReadPhysicianName = (string)dr["ReadPhysicianName"]; // 読影医 rsHistoryTbl.Finding = (string)dr["Finding"]; // 画像所見 rsHistoryTbl.Diagnosing = (string)dr["Diagnosing"]; // 結論・診断 HistoryArray.Add(rsHistoryTbl.SerialNo.ToString()); HistoryArray.Add(rsHistoryTbl.HistoryNo.ToString()); HistoryArray.Add(rsHistoryTbl.ReadDate); HistoryArray.Add(rsHistoryTbl.ReadTime); HistoryArray.Add(rsHistoryTbl.ReadPhysicianName); HistoryArray.Add(rsHistoryTbl.Finding); HistoryArray.Add(rsHistoryTbl.Diagnosing); HistoryArray.Add(""); HistoryDataList.Add(HistoryArray.ToArray()); } dr.Close(); int nIdx = 0; // 読影データ分繰り返す foreach (string[] HistoryData in HistoryDataList) { List <ReportImage> lstImage = new List <ReportImage>(); int HistoryNo = int.Parse(HistoryData[1]);// 読影番号の取得 List <string> ImageArray = new List <string>(); ImageArray.Add(HistoryNo.ToString()); // パラメータのセット sqlDbParam = new DbParamClass(); sqlDbParam.Add(SerialNo); sqlDbParam.Add(HistoryNo); dbprms = sqlDbParam.GetDbParameter(clsDB); // 画像テーブルからデータ取得 sql = new StringBuilder("SELECT * FROM ImageTbl WHERE SerialNo = @0 and HistoryNo = @1"); clsDB.SqlQuery(sql.ToString(), dbprms, out dr); List <RsImageTbl> rsImgList = new List <RsImageTbl>(); // 画像テーブルにデータが存在する場合、データ取得 while (dr.Read()) { ReportImage rImage = new ReportImage(); rImage.ImageData = (byte[])dr["ImageData"]; rImage.ImageExt = (string)dr["ImageExt"]; lstImage.Add(rImage); /* * RsImageTbl rsImageTbl = new RsImageTbl(); * rsImageTbl.SeqNo = (int)dr["SeqNo"]; // SEQ番号 * //rsImageTbl.ImageData = (byte[])dr["ImageData"]; // 画像データ * rsImageTbl.ImageExt = (string)dr["ImageExt"]; // 画像拡張子 * rsImageTbl.ImageName = (string)dr["ImageName"]; * rsImgList.Add(rsImageTbl); * * List<string> ImageArray = new List<string>(); * ImageArray.Add(SerialNo.ToString()); * ImageArray.Add(rsImageTbl.SeqNo.ToString()); * ImageArray.Add(rsImageTbl.ImageName); * ImageArray.Add(rsImageTbl.ImageExt); * * ImageDataList.Add(ImageArray.ToArray()); */ } // 読影データ/画像テーブルへセット // rsReadingData.ImageTblList = rsImgList; // 画像配列へセット dr.Close(); if (lstImage.Count > 0) { List <string> lstImageFileName = new List <string>(); outputReportImage(userCD, SerialNo, imagePath, lstImage, ref lstImageFileName); foreach (string ImgName in lstImageFileName) { ImageArray.Add(ImgName); } } ImageDataList.Add(ImageArray.ToArray()); } bRet = true; } } catch (Exception ex) { retErrMsg = ex.Message; } return(bRet); }