Пример #1
0
        /// <summary>
        /// get except condition
        /// </summary>
        private void formatListsByFileTypeSet(string monistorId)
        {
            IFileTypeSetService iftss           = BLLFactory.ServiceAccess.CreateFileTypeSetService();
            string monitorServerId              = monistorId;
            IList <FileTypeSet> fileTypeSetList = iftss.GetFileTypeSetByMonitorServerID(monitorServerId);

            foreach (FileTypeSet fileTypeSet in fileTypeSetList)
            {
                if (!Directory.Exists(fileTypeSet.monitorServerFolderName))
                {
                    continue;
                }
                List <string> exList = new List <string>();
                if (fileTypeSet.exceptAttributeFlg1 == "1" && !string.IsNullOrEmpty(fileTypeSet.exceptAttribute1))
                {
                    exList.Add(fileTypeSet.exceptAttribute1);
                }
                if (fileTypeSet.exceptAttributeFlg2 == "1" && !string.IsNullOrEmpty(fileTypeSet.exceptAttribute2))
                {
                    exList.Add(fileTypeSet.exceptAttribute2);
                }
                if (fileTypeSet.exceptAttributeFlg3 == "1" && !string.IsNullOrEmpty(fileTypeSet.exceptAttribute3))
                {
                    exList.Add(fileTypeSet.exceptAttribute3);
                }
                DirectoryInfo dir   = new DirectoryInfo(fileTypeSet.monitorServerFolderName);
                FileInfo[]    files = dir.GetFiles();
                if (files.Count() > 0)
                {
                    foreach (FileInfo fileInfo in files)
                    {
                        string extension = fileInfo.Extension;
                        if (!exList.Contains(extension))
                        {
                            continue;
                        }
                        string fullPath         = fileInfo.FullName.IndexOf('\\') > -1 ? fileInfo.FullName.Substring(0, fileInfo.FullName.LastIndexOf('\\')) : fileInfo.FullName;
                        MonitorServerFolder msf = new MonitorServerFolder();
                        msf.monitorServerID = Convert.ToInt32(monistorId);
                        msf.monitorFilePath = fullPath;
                        msf.monitorFileName = fileInfo.Name;
                        msf.monitorFileType = fileInfo.Extension;
                        formatListsData(msf, monistorId);
                    }
                }
            }
        }
Пример #2
0
        public ActionResult Add(string dataJson, int intMonitorServerID)
        {
            int result = 0;

            if (Session["LoginId"] == null)
            {
                result = -99;
            }
            else
            {
                try {
                    List <MonitorServerFolder> folderList = new List <MonitorServerFolder>();
                    folderList = JsonHelper.ParseFormJson <List <MonitorServerFolder> >(dataJson);
                    IFileTypeSetService setService = BLLFactory.ServiceAccess.CreateFileTypeSetService();
                    setFileList = setService.GetFileTypeSetByMonitorServerID(intMonitorServerID.ToString());
                    string dt = Common.CommonUtil.DateTimeNowToString();
                    msFolderService.DeleteMonitorServerFolderByServerId(intMonitorServerID);

                    //format folder list
                    globalfolderList = folderList;

                    tempRemoveLists.Clear();
                    //Not filter——2014-06-11 wjd commented
                    //formatListsByFileTypeSet(intMonitorServerID.ToString());

                    foreach (MonitorServerFolder model in globalfolderList)
                    {
                        if (model != null)
                        {
                            model.id = null;
                            model.monitorFilePath = model.monitorFilePath.TrimEnd('\\');
                            if (model.monitorFileType == "99")
                            { //選択のはフォルダの場合
                                string strpath = string.Empty;
                                if (model.monitorFileName == "")
                                {
                                    strpath = model.monitorFilePath;
                                }
                                else
                                {
                                    strpath = model.monitorFilePath + "\\" + model.monitorFileName;
                                }
                                if (Directory.Exists(strpath))
                                {
                                    FileTypeSet   fset    = setService.GetFileTypeSetByMonitorServerIdAndFolderName(intMonitorServerID.ToString(), model.monitorFilePath);
                                    DirectoryInfo dirInfo = new DirectoryInfo(strpath);
                                    if (fset != null)
                                    {
                                        if (fset.hiddenFileFlg == "1")
                                        {//隠しファイル
                                            if ((dirInfo.Attributes & FileAttributes.Hidden) == FileAttributes.Hidden)
                                            {
                                                continue;
                                            }
                                        }
                                        if (fset.systemFileFlg == "1")
                                        {//システムファイル
                                            if ((dirInfo.Attributes & FileAttributes.System) == FileAttributes.System)
                                            {
                                                continue;
                                            }
                                        }
                                    }
                                    model.createDate      = dt;
                                    model.updateDate      = dt;
                                    model.creater         = Session["LoginId"].ToString();
                                    model.updater         = Session["LoginId"].ToString();
                                    model.monitorServerID = intMonitorServerID;
                                    model.monitorFlg      = "0";
                                    model.initFlg         = "1";
                                    model.deleteFlg       = 0;
                                    result = msFolderService.InsertMonitorServerFolder(model);
                                    //Not save subfolder——2014-06-11 wjd commented
                                    //result = InsertFolder(strpath, dt.ToString(), intMonitorServerID);
                                }
                            }
                            else
                            {//選択のはファイルの場合
                                string      pathName = model.monitorFilePath + "\\" + model.monitorFileName;
                                FileTypeSet fset     = setService.GetFileTypeSetByMonitorServerIdAndFolderName(intMonitorServerID.ToString(), model.monitorFilePath);
                                FileInfo    fileInfo = new FileInfo(pathName);
                                if (fset != null)
                                {
                                    if (fset.hiddenFileFlg == "1")
                                    {//隠しファイル
                                        if ((fileInfo.Attributes & FileAttributes.Hidden) == FileAttributes.Hidden)
                                        {
                                            continue;
                                        }
                                    }
                                    if (fset.systemFileFlg == "1")
                                    {//システムファイル
                                        if ((fileInfo.Attributes & FileAttributes.System) == FileAttributes.System)
                                        {
                                            continue;
                                        }
                                    }
                                }
                                model.createDate      = dt;
                                model.updateDate      = dt;
                                model.creater         = Session["LoginId"].ToString();
                                model.updater         = Session["LoginId"].ToString();
                                model.monitorServerID = intMonitorServerID;
                                model.monitorFlg      = "1";
                                model.deleteFlg       = 0;
                                model.initFlg         = "1";
                                result = msFolderService.InsertMonitorServerFolder(model);
                            }
                        }
                    }

                    /* --選択条件 不要
                     * foreach (FileTypeSet fts in setFileList)
                     * {
                     *  if (Directory.Exists(fts.monitorServerFolderName))
                     *  {
                     *      DirectoryInfo dirInfo = new DirectoryInfo(fts.monitorServerFolderName);
                     *      foreach (FileInfo file in dirInfo.GetFiles())
                     *      {
                     *
                     *          if (CommonUtil.IsExceptFile(file.Name, fts.includeAttribute1, fts.includeAttribute2, fts.includeAttribute3))
                     *          {
                     *              bool bSaved = false;
                     *              foreach (MonitorServerFolder modelFolder in folderList)
                     *              {
                     *
                     *                  if (fts.monitorServerFolderName == modelFolder.monitorFilePath && file.Name == modelFolder.monitorFileName)
                     *                  {
                     *                      bSaved = true;
                     *                      break;
                     *                  }
                     *              }
                     *              if (bSaved)
                     *              {
                     *                  continue;
                     *              }
                     *              MonitorServerFolder model = new MonitorServerFolder();
                     *              //FileInfo file = new FileInfo(strFolderPath);
                     *              model.createDate = dt.ToString();
                     *              model.updateDate = dt.ToString();
                     *              model.creater = Session["LoginId"].ToString();
                     *              model.updater = Session["LoginId"].ToString();
                     *              model.monitorFlg = "1";
                     *              model.deleteFlg = 0;
                     *              model.initFlg = "1";
                     *              model.monitorServerID = intMonitorServerID;
                     *              model.monitorFileName = file.Name;
                     *              model.monitorFilePath = file.DirectoryName;
                     *              model.monitorFileType = file.Extension.ToString();
                     *              result = msFolderService.InsertMonitorServerFolder(model);
                     *          }
                     *      }
                     *
                     *  }
                     * }
                     */
                }
                catch (Exception ex)
                {
                    result = -10;
                    logger.Error(ex.Message);
                }
            }
            Response.Write(result);
            Response.End();
            return(null);
        }