Example #1
0
        //検索
        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);
        }
Example #2
0
        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);
        }
Example #3
0
        //変更履歴の取得
        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);
        }