示例#1
0
        private void ImportScoreSheet()
        {
            try
            {
                //读取zip文件位置
                System.Windows.Forms.OpenFileDialog fileDialog = new System.Windows.Forms.OpenFileDialog();
                fileDialog.Multiselect = true;
                //fileDialog.Title = "请选择文件";
                //fileDialog.Filter = "所有文件(*.*)|*.*";
                fileDialog.Title  = CurrentApp.GetLanguageInfo("3101N014", "Please Select");
                fileDialog.Filter = @"Zip file(*.zip)|*.zip";
                string file;
                if (fileDialog.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                {
                    file = fileDialog.FileName;
                    //System.Windows.Forms.MessageBox.Show("已选择文件:" + file, "选择文件提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
                else
                {
                    return;
                }

                //这个是解压的位置
                string x = Path.GetDirectoryName(file);

                //解压zip文件获取xml 并获得xml文件的位置
                string temp = UnZipFile(file, x);

                OperationReturn optReturn = XMLHelper.DeserializeFile <ScoreSheet>(temp);

                //删除解压的xml文件
                File.Delete(temp);

                ScoreSheet tempScoreSheet = optReturn.Data as ScoreSheet;
                if (tempScoreSheet == null)
                {
                    return;
                }
                tempScoreSheet.ScoreSheet = tempScoreSheet;
                tempScoreSheet.Init();

                List <ScoreObject> listScoreObjectTemp = new List <ScoreObject>();
                tempScoreSheet.GetAllScoreObject(ref listScoreObjectTemp);
                for (int i = 0; i < listScoreObjectTemp.Count; i++)
                {
                    listScoreObjectTemp[i].ID = GetSerialID();
                }
                tempScoreSheet.UseTag = 0;
                tempScoreSheet.ID     = GetSerialID();
                tempScoreSheet.InitUseItemID();
                SaveScoreSheetData(tempScoreSheet);

                //刷新列表
                LoadScoreSheets();
                ShowInformation(CurrentApp.GetLanguageInfo("3101N007", "SECCESS"));
                string msg = string.Format("{0}{1}{2}", CurrentApp.Session.UserInfo.UserName, Utils.FormatOptLogString(string.Format("FO3101005")), tempScoreSheet.Display);
                CurrentApp.WriteOperationLog(S3101Consts.OPT_IMPORTSCORESHEET.ToString(),
                                             ConstValue.OPT_RESULT_SUCCESS, msg);
            }
            catch (Exception ex)
            {
                CurrentApp.WriteLog("ImportScoreSheet Fail--", ex.ToString());
                ShowInformation(CurrentApp.GetLanguageInfo("3101N008", "Fail"));
            }
        }