Exemple #1
0
 /// <summary>
 /// 删除某个节点
 /// </summary>
 /// <param name="fileNode"></param>
 /// <param name="bAsk"></param>
 public static void DeleteNode(FileTreeNode fileNode, bool bAsk = true)
 {
     if (fileNode == null)
     {
         MessageBox.Show("Please Select A file or folder In ViewList !", "Error");
         return;
     }
     //获取用户输入
     if (bAsk)
     {
         DialogResult dr = MessageBox.Show("Are you sure to delete the selection file or folder ?", "Delete Asking", MessageBoxButtons.YesNo);
         if (dr != DialogResult.Yes)
         {
             return;
         }
     }
     //确认删除
     //首先从当前节点中删除掉这个节点
     CurrentNode.SubNodes.Remove(fileNode);
     if (fileNode.SubNodes != null)
     {
         //如果是一个文件夹,还需要去TreeView删除对应的TreeNode
         //寻找他的父节点
         TreeNode CurTreeNode = FindNodeInTree(uiTreeNode.TopNode, CurrentNode);
         TreeNode treeNode    = FindNodeInTree(uiTreeNode.TopNode, fileNode);
         //删除被删除的节点
         CurTreeNode.Nodes.Remove(treeNode);
     }
     //设置ListView
     TurnCurrentNode(CurrentNode);
     BLLControl.SaveDirectoryInfo();
 }
Exemple #2
0
        private void BLLGenerate()
        {
            var sbTemp = new StringBuilder();

            if (rbPreview.Checked)
            {
                DbOperateBase dbOperateBase = new BLLControl(this.listCheckedTables[0].TabPascalName, this.prefixNameSpace, this.prefixClass,
                                                             this.prefixModel, this.checkedListBox1);
                sbTemp                    = dbOperateBase.Generate();
                rtbPreview.Text           = sbTemp.ToString();
                tabControl1.SelectedIndex = 1;
            }
            else //Generate File
            {
                foreach (Table t in this.listCheckedTables)
                {
                    DbOperateBase dbOperateBase = new BLLControl(this.listCheckedTables[0].TabPascalName, this.prefixNameSpace, this.prefixClass,
                                                                 this.prefixModel, this.checkedListBox1);
                    sbTemp = dbOperateBase.Generate();
                    generateFile("BLL", t.TabPascalName, sbTemp);
                }
                if (sbTemp.ToString() == string.Empty)
                {
                    return;
                }
                openGenerateFile("Success in generate Business Layer Files!", "C:\\GeneFile\\BLL\\");
            }
        }
Exemple #3
0
        /// <summary>
        /// 修改某个节点的节点名字[文件名或目录名]
        /// </summary>
        /// <param name="fileNode"></param>
        public static void RenameNode(FileTreeNode fileNode)
        {
            if (fileNode == null)
            {
                MessageBox.Show("Please Select A file or folder In ViewList !", "Error");
                return;
            }
            //获取用户输入
            string folderName = Interaction.InputBox("Please Set A name of your selection.");

            //如果为空,则忽略
            if (folderName == "")
            {
                return;
            }
            //首先修改节点名字
            fileNode.NodeName = folderName;
            //设置ListView
            TurnCurrentNode(CurrentNode);
            //如果是文件夹,那么修改TreeView的内容项
            if (fileNode.SubNodes != null)
            {
                //在TreeView中找到当前节点
                TreeNode treeNode = FindNodeInTree(uiTreeNode.TopNode, fileNode);
                treeNode.Text = fileNode.NodeName;
            }
            BLLControl.SaveDirectoryInfo();
        }
Exemple #4
0
        private void btnUpload_Click(object sender, EventArgs e)
        {
            FileTreeNode file = null;

            //针对直接上传图片,却选择的是微博类型的情况做的特殊处理。
            do
            {
                if (strUploadPath.Substring(strUploadPath.LastIndexOf('.') + 1).ToLower() == "jpg")
                {
                    if (cbFileKind.Text == "Weibo")
                    {
                        file = BLLControl.UploadFile(strUploadPath, fileID, txtFileInfo.Text, ContentKind.Picture, "VssDisk");
                        break;
                    }
                }

                //正常情况
                file = BLLControl.UploadFile(strUploadPath, fileID, txtFileInfo.Text, (ContentKind)(cbFileKind.SelectedIndex + 1), "VssDisk");
                break;
            }while (true);


            //如果是上传不是替换
            if (fileID == "")
            {
                UIController.AddNode(file);
            }
            else
            {
                UIController.ReplaceNodeByFileID(fileID, null, file);
            }

            //如果上传的是一张图片
            if (strUploadPath.Substring(strUploadPath.LastIndexOf('.') + 1).ToLower() == "jpg")
            {
                if (cbFileKind.Text == "Weibo")
                {
                    BlogMsg blog = new BlogMsg();

                    blog.strUin        = BLLControl.GetValidator().VssID;
                    blog.strFromClient = BLLControl.GetValidator().AppID;
                    blog.strObjPicUrl  = file.FileID;
                    blog.strMsgID      = "";
                    blog.strNickName   = "";
                    blog.strContent    = "";
                    DateTime dt = DateTime.Now;
                    blog.strWriteDate = dt.Year + "年" + dt.Month + "月" + dt.Day + "日 " + dt.Hour + ":" + dt.Minute + ":" + dt.Second;
                    blog.strObjKind   = "None";

                    blog.imgHeadSrc = "";
                    file            = BLLControl.UploadTextFile(JsonConvert.SerializeObject(blog), strUploadPath.Substring(strUploadPath.LastIndexOf("\\") + 1), "", txtFileInfo.Text, (ContentKind)(cbFileKind.SelectedIndex + 1), "VssDisk");
                    blog.strMsgID   = file.FileID;
                    file            = BLLControl.UploadTextFile(JsonConvert.SerializeObject(blog), strUploadPath.Substring(strUploadPath.LastIndexOf("\\") + 1), file.FileID, txtFileInfo.Text, (ContentKind)(cbFileKind.SelectedIndex + 1), "VssDisk");
                    UIController.AddNode(file);
                }
            }

            this.Close();
        }
Exemple #5
0
        private void UpdateStateString()
        {
            TNumber tNumber = BLLControl.GetNumber();

            tssFriendMessage.Text = tNumber.FriendMsgNum.ToString();

            tssMessage.Text = tNumber.ProvideMsgNum.ToString();
        }
Exemple #6
0
        /// <summary>
        /// 根据FileID来删除节点
        /// </summary>
        /// <param name="fileID"></param>
        public static void DeleteNodeByFileID(string fileID)
        {
            //从整个目录入手删除节点
            DeleteFileByID(BLLControl.RootFileTree, fileID);
            //从当前浏览页删除节点
            List <FileTreeNode> listNode = new List <FileTreeNode>();

            FindNodeByFileID(fileID, CurrentNode, listNode);
            foreach (FileTreeNode node in listNode)
            {
                CurrentNode.SubNodes.Remove(node);
            }
            TurnCurrentNode(CurrentNode);
            BLLControl.SaveDirectoryInfo();
        }
Exemple #7
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                BLLControl bllControl = new BLLControl(Session[Comm.SessionKey.UserID].ToString());

                this.ddlData.Items.Clear();
                foreach (CodeListInfo item in bllControl.GetList <CodeListInfo>(" CodeType = 'userType' "))
                {
                    this.ddlData.Items.Add(new ListItem(item.CodeName, item.CodeValue));
                }
                this.ddlData.SelectedValue = "2";
                this.ddlData.SelectedValue = this.selectValue;
            }
        }
Exemple #8
0
        private void lblLogin_Click(object sender, EventArgs e)
        {
            //调用登录验证逻辑!

            bool bPass = BLLControl.Login(txtVssId.Text, txtPassword.Text, "VssDisk");

            if (bPass)
            {
                MessageBox.Show("Wrong Username OR Password ! Please Retry !");
                return;
            }
            else
            {
                Main mainForm = new Main();
                mainForm.Show();
                this.Hide();
            }
        }
Exemple #9
0
        public static void ReplaceNodeByFileID(string fileID, FileTreeNode zoneNode, FileTreeNode destNode)
        {
            List <FileTreeNode> list = new List <FileTreeNode>();

            if (zoneNode == null)
            {
                zoneNode = FreeFolder;
            }
            FindNodeByFileID(fileID, zoneNode, list);
            foreach (FileTreeNode node in list)
            {
                node.CreateDate = destNode.CreateDate;
                node.FileInfo   = destNode.FileInfo;
                node.FileKind   = destNode.FileKind;
                node.FileSize   = destNode.FileSize;
                node.FromApp    = destNode.FromApp;
            }
            TurnCurrentNode(CurrentNode);
            BLLControl.SaveDirectoryInfo();
        }
Exemple #10
0
        private void replaceToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (listView1.SelectedItems.Count == 0)
            {
                return;
            }
            FileTreeNode file = (FileTreeNode)listView1.SelectedItems[0].Tag;

            if (file.FileOwner != BLLControl.GetValidator().VssID)
            {
                MessageBox.Show("This File is not belong to you ! So you can not Destory it !");
                return;
            }
            DialogResult dialogResult = MessageBox.Show("If you replace the FILE by what you upload later. All the functions which rely on the File will change. Do you stil want to Replace it?", "Replace Alarm", MessageBoxButtons.YesNo);

            if (dialogResult == DialogResult.Yes)
            {
                UIController.Upload(file.FileID);
            }
        }
Exemple #11
0
 public static void AddNode(FileTreeNode fileNode)
 {
     //加入当前节点中
     CurrentNode.SubNodes.Add(fileNode);
     //如果是增加一个文件,则不需要处理目录。
     if (fileNode.SubNodes != null)
     {
         //在TreeView中找到当前节点
         TreeNode treeNode = FindNodeInTree(uiTreeNode.TopNode, CurrentNode);
         //找不到选中的树,触发错误。
         if (treeNode == null)
         {
             throw new Exception("不存在指定节点");
         }
         TreeNode newNode = new TreeNode();
         SetTreeNodeByObject(ref newNode, fileNode);
         treeNode.Nodes.Add(newNode);
     }
     TurnCurrentNode(CurrentNode);
     BLLControl.SaveDirectoryInfo();
 }
Exemple #12
0
        private void Destory()
        {
            if (listView1.SelectedItems.Count == 0)
            {
                return;
            }
            FileTreeNode file = (FileTreeNode)listView1.SelectedItems[0].Tag;

            if (file.FileOwner != BLLControl.GetValidator().VssID)
            {
                MessageBox.Show("This File is not belong to you ! You have no permission to dispose it !");
                return;
            }
            DialogResult dialogResult = MessageBox.Show("If you dispose the file, all links to this file will lost! Continue ?", "Alarm", MessageBoxButtons.YesNo);

            if (dialogResult == DialogResult.Yes)
            {
                UIController.DestroyNode(file);
                UIController.DeleteNodeByFileID(file.FileID);
            }
        }
Exemple #13
0
        private void Main_Load(object sender, EventArgs e)
        {
            #region Init UIController

            List <TextBox> listTextBox = new List <TextBox>();
            listTextBox.Add(tbFileID);
            listTextBox.Add(tbFileName);
            listTextBox.Add(tbFileKind);
            listTextBox.Add(tbFromApp);
            listTextBox.Add(tbFileSize);
            listTextBox.Add(tbCreateDate);
            UIController.InitUIController(ref treeView1, ref listView1, ref listTextBox, ref rtbFileInfo, this);

            #endregion


            #region For Login

            //进行通信,拉取用户的数据。

            FileTreeNode fileTreeNode = BLLControl.InitFileTree();

            UIController.InitData(fileTreeNode);
            //0是自己文件夹
            UIController.InitFolder(fileTreeNode.SubNodes[0], fileTreeNode.SubNodes[1], fileTreeNode.SubNodes[2], fileTreeNode.SubNodes[3]);


            #endregion

            //Start the Timer. Just for Demo. Has poor performance.
            UpdateStateString();

            UIController.FillFileTreeByTimerLoadingMessage(ref treeView1);

            timerMessage.Start();
        }
Exemple #14
0
 /// <summary>
 /// 剪贴
 /// </summary>
 /// <param name="fileNode"></param>
 public static void CutNode(FileTreeNode fileNode)
 {
     CutTemp = fileNode;
     DeleteNode(fileNode, false);
     BLLControl.SaveDirectoryInfo();
 }
Exemple #15
0
 /// <summary>
 /// 删除指定节点表示的文件!将破坏所有与此节点文件相关的Provide!
 /// </summary>
 /// <param name="fileNode"></param>
 public static void DestroyNode(FileTreeNode fileNode)
 {
     BLLControl.DestoryFile(fileNode.FileID);
 }
Exemple #16
0
        public static void FillFileTreeByTimerLoadingMessage(ref TreeView treeView)
        {
            //先填充自己的公布
            List <TMessages> list = BLLControl.GetPublishMessage(new List <string>()
            {
                BLLControl.GetValidator().VssID
            }, 500);
            List <TMessages> provideItems = BLLControl.GetProvideItems(500);

            list.AddRange(provideItems);
            TreeNode theTreeNode = treeView.Nodes[1];

            PublishFolder.SubNodes.Clear();
            foreach (TMessages msg in list)
            {
                PublishFolder.SubNodes.Add(CreateTreeNodeByMessage(msg));
            }
            //验证数据是否变化,再确定是否替换。
            bool needRefresh = true;

            if (tempPublishFolder != null)
            {
                if (CompareFileTreeNode(tempPublishFolder, PublishFolder))
                {
                    needRefresh = false;
                }
            }
            if (needRefresh)
            {
                theTreeNode.Nodes.Clear();
                SetTreeNodeByObject(ref theTreeNode, PublishFolder);
                tempPublishFolder = (FileTreeNode)PublishFolder.Clone();
            }


            //填充收听表
            Dictionary <string, List <TMessages> > dictMsg;

            List <string> friList = BLLControl.GetFocusList();

            if (friList.Count != 0)
            {
                list    = BLLControl.GetPublishMessage(friList, 500);
                dictMsg = new Dictionary <string, List <TMessages> >();
                foreach (TMessages msg in list)
                {
                    if (!dictMsg.ContainsKey(msg.FromVssId))
                    {
                        dictMsg.Add(msg.FromVssId, new List <TMessages>());
                    }
                    dictMsg[msg.FromVssId].Add(msg);
                }
                theTreeNode = treeView.Nodes[2];
                FocusFolder.SubNodes.Clear();
                foreach (string key in dictMsg.Keys)
                {
                    FileTreeNode folder = new FileTreeNode();
                    folder.SubNodes = new List <FileTreeNode>();
                    folder.FileID   = "0";
                    folder.FileKind = ContentKind.Folder;
                    folder.FileInfo = key + "'s Folder";
                    folder.FileSize = 0;
                    folder.FromApp  = "Vss";
                    folder.NodeName = key;
                    folder.SubNodes = new List <FileTreeNode>();
                    foreach (TMessages msg in dictMsg[key])
                    {
                        folder.SubNodes.Add(CreateTreeNodeByMessage(msg));
                    }
                    FocusFolder.SubNodes.Add(folder);
                }

                //验证数据是否变化,再确定是否替换。
                needRefresh = true;
                if (tempFocusFolder != null)
                {
                    if (CompareFileTreeNode(tempFocusFolder, FocusFolder))
                    {
                        needRefresh = false;
                    }
                }

                if (needRefresh)
                {
                    theTreeNode.Nodes.Clear();
                    SetTreeNodeByObject(ref theTreeNode, FocusFolder);
                    tempFocusFolder = (FileTreeNode)FocusFolder.Clone();
                }
            }


            //下面填充我Receive的列表

            list    = BLLControl.GetProvideMessage(500);
            dictMsg = new Dictionary <string, List <TMessages> >();
            foreach (TMessages msg in list)
            {
                if (!dictMsg.ContainsKey(msg.FromVssId))
                {
                    dictMsg.Add(msg.FromVssId, new List <TMessages>());
                }
                dictMsg[msg.FromVssId].Add(msg);
            }
            theTreeNode = treeView.Nodes[3];
            ReceiveFolder.SubNodes.Clear();
            foreach (string key in dictMsg.Keys)
            {
                FileTreeNode folder = new FileTreeNode();
                folder.SubNodes = new List <FileTreeNode>();
                folder.FileID   = "0";
                folder.FileKind = ContentKind.Folder;
                folder.FileInfo = key + "'s Folder";
                folder.FileSize = 0;
                folder.FromApp  = "Vss";
                folder.NodeName = key;
                folder.SubNodes = new List <FileTreeNode>();
                foreach (TMessages msg in dictMsg[key])
                {
                    folder.SubNodes.Add(CreateTreeNodeByMessage(msg));
                }
                ReceiveFolder.SubNodes.Add(folder);
            }

            //验证数据是否变化,再确定是否替换。
            needRefresh = true;
            if (tempReceiveFolder != null)
            {
                if (CompareFileTreeNode(tempReceiveFolder, ReceiveFolder))
                {
                    needRefresh = false;
                }
            }

            if (needRefresh)
            {
                theTreeNode.Nodes.Clear();
                SetTreeNodeByObject(ref theTreeNode, ReceiveFolder);
                tempReceiveFolder = (FileTreeNode)ReceiveFolder.Clone();
            }
        }