Esempio n. 1
0
 //move to next level, current father File is file
 public void NextLevel(StateFileModel sf)
 {
     this.CurrentFatherId = sf.ID;
     getCurrentFileData(CurrentFileList, CurrentFatherId);
     PathStr = "状态文件:";
     getCurrentPath(CurrentFatherId);
 }
Esempio n. 2
0
 /// <summary>
 /// Instantiates a new instance of the SaveFileViewModel
 /// </summary>
 /// <param name="stateFileModel">The StateFIleModel to be serialized to a file</param>
 public SaveFileViewModel(StateFileModel stateFileModel)
 {
     SaveFileCommand   = new RelayCommand(Save);
     CloseCommand      = new RelayCommand(Close);
     SelectFileCommand = new RelayCommand(Select);
     _stateFileModel   = stateFileModel;
 }
Esempio n. 3
0
        //连接数据库
        private void getCurrentFileData(ObservableCollection <StateFileModel> fileList, int id)
        {
            fileList.Clear();
            string    SQL = @"SELECT * FROM SYS_TEST_PLAN WHERE FileParentID={0} AND ENABLE='Y' ";
            DataTable dt  = DataUtils.DB.GetDataSetFromSQL(string.Format(SQL, id)).Tables[0];

            if (dt.Rows.Count > 0)
            {
                foreach (DataRow dr in dt.Rows)
                {
                    string SizeSql = @"SELECT datalength(StateData)/1024 FROM dbo.SYS_TEST_PLAN  where  FileID='{0}' ";
                    string sizeStr = DataUtils.DB.GetSingleValueFromSQL(string.Format(SizeSql, Convert.ToInt32(dr["FileID"]))).ToString();
                    if (string.IsNullOrWhiteSpace(sizeStr))
                    {
                        sizeStr = "0";
                    }
                    string         userSQL   = @"SELECT UserName  FROM SYS_USER WHERE ID='{0}'";
                    int            userID    = Convert.ToInt32(DataUtils.StaticInfo.LoginUser);
                    string         userInfor = DataUtils.DB.GetSingleValueFromSQL(string.Format(userSQL, userID)).ToString();
                    StateFileModel sf        = new StateFileModel()
                    {
                        ID             = Convert.ToInt32(dr["FileID"]), ParentFileId = Convert.ToInt32(dr["FileParentID"]),
                        IsFolder       = Convert.ToChar(dr["IsFolder"]) == 'Y' ? true : false, Name = Convert.ToString(dr["FileName"]), Version = Convert.ToString(dr["FileVersion"]),
                        UpdateDateTime = Convert.ToString(dr["UpdateTime"]), UpdateUser = userInfor,
                        FileDisp       = Convert.ToString(dr["FileDisp"])
                    };
                    if (sf.IsFolder == false)
                    {
                        sf.FileSize = sizeStr + "KB";
                    }
                    fileList.Add(sf);
                }
            }
        }
Esempio n. 4
0
 private void OpenFile()
 {
     if (DataUtils.StaticInfo.MesMode.ToLower() == "true")
     {
         if ((new ViewModelLocator()).MainWindow.StatusInfo.IsAdmin)
         {
             object obj = listView.SelectedItem as StateFileModel;
             if (obj != null)
             {
                 StateFileModel stateFileModel = listView.SelectedItem as StateFileModel;
                 if (DataUtils.StaticInfo.ATEStatusFile.ToUpper() == "TRUE")
                 {
                     string    material = stateFileModel.Name;
                     string    process  = (new ViewModelLocator()).MainWindow.StatusInfo.Process;
                     DataTable dtFile   = DataUtils.Interface.GetFile("", process, material);
                     if (dtFile.Rows.Count >= 1)
                     {
                         DXMessageBox.Show("文件已审核不能编辑!", "提示");
                         return;
                     }
                 }
                 Window mainWindow = DevExpress.Xpf.Core.Native.LayoutHelper.FindLayoutOrVisualParentObject(this, (el) => { return(el is Window); }) as Window;
                 System.Reflection.MethodInfo mif = mainWindow.GetType().GetMethod("ActiveItem", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance);
                 if (mif != null)
                 {
                     mif.Invoke(
                         mainWindow, new object[] { string.Format(@"\MeasurementUI.dll;component/View/ConfigTestStep.xaml?PlanID={0}={1}", stateFileModel.ID, stateFileModel.Name), stateFileModel.Name, "文件" }
                         );
                 }
             }
         }
         else
         {
             DXMessageBox.Show("没有修改配置文件权限!", "提示");
         }
     }
     else
     {
         object obj = listView.SelectedItem as StateFileModel;
         if (obj != null)
         {
             StateFileModel stateFileModel    = listView.SelectedItem as StateFileModel;
             Window         mainWindow        = DevExpress.Xpf.Core.Native.LayoutHelper.FindLayoutOrVisualParentObject(this, (el) => { return(el is Window); }) as Window;
             System.Reflection.MethodInfo mif = mainWindow.GetType().GetMethod("ActiveItem", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance);
             if (mif != null)
             {
                 mif.Invoke(
                     mainWindow, new object[] { string.Format(@"\MeasurementUI.dll;component/View/ConfigTestStep.xaml?PlanID={0}={1}", stateFileModel.ID, stateFileModel.Name), stateFileModel.Name, "文件" }
                     );
             }
         }
     }
 }
Esempio n. 5
0
        private void GetAllFileData()
        {
            string process   = (new ViewModelLocator()).MainWindow.StatusInfo.Process;
            string TRES      = "";
            string userSQL   = @"SELECT UserName FROM SYS_USER WHERE UserID='{0}'";
            object obj       = DataUtils.StaticInfo.LoginUser;
            string userID    = Convert.ToString(DataUtils.StaticInfo.LoginUser);
            string userInfor = DataUtils.DB.GetSingleValueFromSQL(string.Format(userSQL, userID)).ToString();

            DataTable dt = DataUtils.DB.QueryProc("GET_MATERIAL", ref TRES, "@MATERIAL=" + "").Tables[0];

            if (TRES.Substring(0, 2) == "OK" && dt.Rows.Count > 0)
            {
                foreach (DataRow row in dt.Rows)
                {
                    string materialStr = row["MATERIAL"].ToString();
                    string result      = DataUtils.DB.ExecProc
                                             ("UPDATE_SYS_TEST_PLAN",
                                             "@ACTION=" + "UPDATEDATA",
                                             "@Material=" + materialStr,
                                             "@Process=" + process,
                                             "@Sys_User_ID=" + userID
                                             );
                }
            }
            string    SQLFile = @"select A.FileID, A.Material,A.IsFolder, A.PROCESS, datalength(StateData)/1024 SIZE,A.UpDateTime from SYS_TEST_PLAN A WHERE a.Material in (select distinct MATERIAL from G_SHOPORDER_STATUS) and  PROCESS='{0}'";
            DataTable dtFile  = DataUtils.DB.GetDataSetFromSQL(string.Format(SQLFile, process)).Tables[0];

            foreach (DataRow dr in dtFile.Rows)
            {
                if (Convert.IsDBNull(dr["SIZE"]))
                {
                    dr["SIZE"] = "0";
                }
                StateFileModel sf = new StateFileModel()
                {
                    ID             = Convert.ToInt32(dr["FileID"]),
                    IsFolder       = Convert.ToChar(dr["IsFolder"]) == 'Y' ? true : false,
                    Name           = Convert.ToString(dr["Material"]),
                    UpdateDateTime = Convert.ToString(dr["UpdateTime"]),
                    FileProcess    = Convert.ToString(dr["Process"]),
                    FileSize       = Convert.ToString(dr["SIZE"]) + "KB"
                };
                CurrentFileList.Add(sf);
                FileterFileList.Add(sf);
            }
        }
Esempio n. 6
0
        public string ReName(StateFileModel sf, string str)
        {
            string outstr = DataUtils.DB.ExecProc(
                "UPDATE_SYS_TEST_PLAN",
                "@ACTION=" + "MODIFY",
                "@FileID=" + sf.ID,
                "@FileParentID=" + sf.ParentFileId,
                "@IsFolder=" + (sf.IsFolder == true ? "Y": "N"),
                "@FileName=" + str,
                "@FileVersion=" + sf.Version,
                "@FileDisp=" + "",
                "@FileProcess=" + "",
                "@UpdateTime=" + DateTime.Now,
                "@Sys_User_ID=" + DataUtils.StaticInfo.LoginUser
                );

            return(outstr);
        }
Esempio n. 7
0
        private void GetATEModeFileData()
        {
            string    SQLFile = @"select A.FileID, A.FileName ,A.IsFolder, datalength(StateData)/1024 SIZE,A.UpDateTime from ATE_Test_FILE A";
            DataTable dtFile  = DataUtils.DB.GetDataSetFromSQL(string.Format(SQLFile)).Tables[0];

            foreach (DataRow dr in dtFile.Rows)
            {
                if (Convert.IsDBNull(dr["SIZE"]))
                {
                    dr["SIZE"] = "0";
                }
                StateFileModel sf = new StateFileModel()
                {
                    ID             = Convert.ToInt32(dr["FileID"]),
                    IsFolder       = Convert.ToChar(dr["IsFolder"]) == 'Y' ? true : false,
                    Name           = Convert.ToString(dr["FileName"]),
                    UpdateDateTime = Convert.ToString(dr["UpdateTime"]),
                    FileSize       = Convert.ToString(dr["SIZE"]) + "KB"
                };
                CurrentFileList.Add(sf);
                FileterFileList.Add(sf);
            }
        }
Esempio n. 8
0
        //create new file or new folder
        public void Create(string str)
        {
            StateFileModel sf = new StateFileModel();

            if (str == "新建文件夹")
            {
                string outstr = DataUtils.DB.ExecProc(
                    "UPDATE_SYS_TEST_PLAN",
                    "@ACTION=" + "UPDATE",
                    "@FileParentID=" + CurrentFatherId,
                    "@IsFolder=" + "Y",
                    "@FileName=" + "新建文件夹",
                    "@FileVersion=" + "",
                    "@FileDisp=" + "",
                    "@FileProcess=" + "",
                    "@UpdateTime=" + DateTime.Now,
                    "@Sys_User_ID=" + DataUtils.StaticInfo.LoginUser
                    );
            }
            else if (str == "新建文件")
            {
                string outstr = DataUtils.DB.ExecProc(
                    "UPDATE_SYS_TEST_PLAN",
                    "@ACTION=" + "UPDATE",
                    "@FileParentID=" + CurrentFatherId,
                    "@IsFolder=" + "N",
                    "@FileName=" + "新建文件",
                    "@FileVersion=" + "",
                    "@FileDisp=" + "",
                    "@FileProcess=" + "",
                    "@UpdateTime=" + DateTime.Now,
                    "@Sys_User_ID=" + DataUtils.StaticInfo.LoginUser
                    );
            }
            getCurrentFileData(CurrentFileList, CurrentFatherId);
        }
Esempio n. 9
0
        //连接数据库
        public void  getCurrentFileData()
        {
            if (CurrentFileList != null)
            {
                CurrentFileList.Clear();
                FileterFileList.Clear();
            }
            else
            {
                CurrentFileList = new ObservableCollection <StateFileModel>();
                FileterFileList = new ObservableCollection <StateFileModel>();
            }
            if (DataUtils.StaticInfo.MesMode.ToLower() == "true")
            {
                string ateKind   = DataUtils.StaticInfo.ATEKind;
                string terminal  = (new ViewModelLocator()).MainWindow.StatusInfo.Terminal;
                string material  = (new ViewModelLocator()).MainWindow.StatusInfo.Material;
                string processid = (new ViewModelLocator()).MainWindow.StatusInfo.Process;
                if (DataUtils.StaticInfo.ATEStatusFile.ToUpper() == "TRUE")
                {
                    if ((new ViewModelLocator()).MainWindow.StatusInfo.IsAdmin)
                    {
                        GetAllFileData();
                    }
                    else
                    {
                        string strSql      = @"select PROCESSName from SYS_PROCESS where PROCESSID='{0}'";
                        string processName = DataUtils.DB.GetSingleValueFromSQL(string.Format(strSql, processid)).ToString();

                        string    sql    = @"select * from (SELECT 类型,产品,ISNULL(B.PROCESSNAME,'') 工序,文件名,更新时间,更新人员,审核人员,审核时间,是否审核 FROM (
                                   SELECT A.ATEKIND 类型,A.MATERIALHANDLE 产品,A.PROCESS,A.MATERIALHANDLE+'-'+A.PROCESS 文件名,CONVERT(VARCHAR(100), A.UPDATETIME, 120) 更新时间,A.UPDATEUSER 更新人员,A.CONFIRMUSER 审核人员,
                                   CONVERT(VARCHAR(100), A.CONFIRMTIME, 120) 审核时间,ISNULL(A.CONFIRMSTATUS,'N') 是否审核 
                                   FROM ATE_STATUS_FILE A 
                                   UNION
                                   SELECT 'ATES' 类型,
                                   CASE WHEN CHARINDEX(C.PROCESSID,B.FILENAME)>0 THEN LEFT(B.FILENAME,LEN(B.FILENAME)-LEN(C.PROCESSID )-1) ELSE B.FILENAME END 产品, 
                                   C.PROCESSID ,B.FILENAME 文件名,CONVERT(VARCHAR(100), B.UPDATETIME, 120) 更新时间,B.UPDATEUSER 更新人员,B.CONFIRMUSER 审核人员,
                                   CONVERT(VARCHAR(100), B.CONFIRMTIME, 120) 审核时间,ISNULL(B.CONFIRMSTATUS,'N') 是否审核 
                                   FROM  G_TEST_STATUS B,(SELECT DISTINCT SHOPORDER,PROCESSID,STATUSID FROM G_ASSIGN_SHOPORDER_TEST_STATUS WHERE PROCESSID IS NOT NULL AND STATUSID<>'') C WHERE B.FILENAME=C.STATUSID
                                   ) A LEFT JOIN SYS_PROCESS B ON A.PROCESS=B.PROCESSID) A
                                   where A.类型='{0}' and A.工序='{1}' and A.是否审核='Y'   ORDER BY 审核时间 DESC,更新时间 DESC";
                        DataTable dtFile = DataUtils.DB.GetDataSetFromSQL(string.Format(sql, ateKind, processName)).Tables[0];
                        if (dtFile.Rows.Count <= 0)
                        {
                            CurrentFileList = null; FileterFileList = null; return;
                        }
                        else
                        {
                            foreach (DataRow dr in dtFile.Rows)
                            {
                                string    SQLFile = @"select A.FileID, A.Material,A.IsFolder, A.PROCESS, datalength(StateData)/1024 SIZE,A.UpDateTime from SYS_TEST_PLAN A WHERE a.Material='{0}'  and  PROCESS='{1}'";
                                DataTable dtData  = DataUtils.DB.GetDataSetFromSQL(string.Format(SQLFile, Convert.ToString(dr["产品"]), processid)).Tables[0];
                                foreach (DataRow dRow in dtData.Rows)
                                {
                                    if (Convert.IsDBNull(dRow["SIZE"]))
                                    {
                                        dRow["SIZE"] = "0";
                                    }
                                    StateFileModel sf = new StateFileModel()
                                    {
                                        ID             = Convert.ToInt32(dRow["FileID"]),
                                        IsFolder       = Convert.ToChar(dRow["IsFolder"]) == 'Y' ? true : false,
                                        Name           = Convert.ToString(dRow["Material"]),
                                        UpdateDateTime = Convert.ToString(dRow["UpdateTime"]),
                                        FileProcess    = Convert.ToString(dRow["Process"]),
                                        FileSize       = Convert.ToString(dRow["SIZE"]) + "KB"
                                    };
                                    CurrentFileList.Add(sf);
                                    FileterFileList.Add(sf);
                                }
                            }
                        }
                    }
                }
                else
                {
                    GetAllFileData();
                }
            }
            else
            {
                GetATEModeFileData();
            }
        }