public void GivenARelease_WhenComparedToAnIdenticalRelease_ThenTheyAreEqual()
        {
            ReleaseData ad1 = new ReleaseData("releaseName");
            ReleaseData ad2 = new ReleaseData("releaseName");

            Assert.IsTrue(ad1.Equals(ad2));
        }
        private bool ChooseReleasePicture(ReleaseData releaseData, int releaseNumber)
        {
            List <ImageViewModel> images = new List <ImageViewModel>();

            foreach (ImageItem imageItem in releaseData.Images)
            {
                ImageViewModel imageViewModel = new ImageViewModel(imageItem);
                images.Add(imageViewModel);
            }

            string title = "Choose image for release " + releaseNumber + "/" + this.totalReleases + " - " + releaseData.Release.JoinedAlbumArtists + " - " + releaseData.Release.Title;

            bool pickResult = false;

            this.waitWindow.Dispatcher.Invoke(() =>
            {
                ImagePicker picker = new ImagePicker(title, images);
                if (picker.ShowDialog() == true)
                {
                    ImageViewModel selectedItem = (ImageViewModel)picker.SelectedItem;
                    this.UpdateImageForRelease(releaseData, selectedItem);
                    pickResult = true;
                }
                else if (picker.IsSkipped)
                {
                    pickResult = true;
                }
                else
                {
                    pickResult = false;
                }
            });

            return(pickResult);
        }
示例#3
0
        private ReleaseUseCase GetReleaseUseCase(ICheckNotifier checkNotifier)
        {
            var data = new ReleaseData(RepositoryLocator);

            foreach (IExtractionConfiguration configuration in _configurations)
            {
                data.ConfigurationsForRelease.Add(configuration, GetReleasePotentials(configuration));
                data.EnvironmentPotentials.Add(configuration, new ReleaseEnvironmentPotential(configuration));
                data.SelectedDatasets.Add(configuration, GetSelectedDataSets(configuration));
            }

            data.ReleaseGlobals = _options.ReleaseGlobals ?? true;

            var allDdatasets     = _configurations.SelectMany(ec => ec.GetAllExtractableDataSets()).ToList();
            var selectedDatasets = data.SelectedDatasets.Values.SelectMany(sd => sd.ToList()).ToList();

            data.ReleaseState = allDdatasets.Count != selectedDatasets.Count
                                    ? ReleaseState.DoingPatch
                                    : ReleaseState.DoingProperRelease;

            try
            {
                return(new ReleaseUseCase(_project, data, RepositoryLocator.CatalogueRepository));
            }
            catch (Exception ex)
            {
                checkNotifier.OnCheckPerformed(new CheckEventArgs("FAIL: " + ex.Message, CheckResult.Fail, ex));
            }

            return(null);
        }
        public async Task <DownloadedItems> DownloadData(ReleaseData data, bool includeTfsService = false)
        {
            //var downloadedData = await _changesetConnector.GetChangesetsAsync(data);
            var categoryChanges = await _changesetConnector.GetChangesetsAsync(data, "3.1");

            var changesByCategory = categoryChanges
                                    .Where(x => x.Item2.Any())
                                    .OrderBy(x => x.Item1)
                                    .ToDictionary(x => x.Item1, y => y.Item2.Select(z => z.changesetId).ToList());

            var changesList = categoryChanges
                              .SelectMany(x => x.Item2)
                              .DistinctBy(x => x.changesetId)
                              .OrderByDescending(x => x.checkedInBy.date)
                              .ToList();
            var downloadedData = new DownloadedItems {
                Categorized = changesByCategory, Changes = changesList
            };

            downloadedData.FilterTfsChanges(includeTfsService);

            var changesetWorkItemsId = downloadedData.Changes
                                       .Where(x => !string.IsNullOrWhiteSpace(x.comment) && _regex.Match(x.comment).Success)
                                       .Select(x => _regex.Match(x.comment).Groups[1].Captures[0].Value)
                                       .Select(x => x.Split(','))
                                       .SelectMany(x => x)
                                       .Select(x => x).ToList();

            downloadedData.WorkItems = await _workItemConnector.GetWorkItems(data.Iteration, changesetWorkItemsId);

            return(downloadedData);
        }
示例#5
0
        public void GIVEN__File_A10341T0000008CMPA_IsProcessed__WHEN__ParseManagerFinishesParsing__THEN__DataReturnedIsNotNull()
        {
            //Arrange
            string rootPath              = @"C:\Users\Dave\Documents\Visual Studio 2013\Projects\XMLFeedImporter\XMLFeedImporter\ftp\A10341T0000008CY44\A10341T0000008CMPA";
            string fileName              = "A10341T0000008CMPA.xml";
            var    parseManager          = GetParseManager(rootPath, fileName);
            bool   dataReturnedIsNotNull = false;

            //Act
            parseManager.Parse(string.Format(@"{0}\\{1}", rootPath, fileName));

            ReleaseData data  = (ReleaseData)parseManager.GetDtos()[0];
            ReleaseData data2 = (ReleaseData)parseManager.GetDtos()[1];

            if
            (
                data.DisplayArtistName != string.Empty &&
                data.GRid != string.Empty &&
                data.LabelName != string.Empty &&
                data.ReleaseType != string.Empty &&
                data.TitleText != string.Empty &&

                data2.DisplayArtistName != string.Empty &&
                data2.GRid != string.Empty &&
                data2.LabelName != string.Empty &&
                data2.ReleaseType != string.Empty &&
                data2.TitleText != string.Empty
            )
            {
                dataReturnedIsNotNull = true;
            }

            //Assert
            Assert.IsTrue(dataReturnedIsNotNull);
        }
示例#6
0
 private void ToolSelectLine_Click(object sender, EventArgs e)
 {
     string[] EmpData = Input.InputBox.ShowInputBox("输入权限", string.Empty);
     try
     {
         string UserId = EmpData[0];
         string PWD    = EmpData[1];
         if (!string.IsNullOrEmpty(UserId) && !string.IsNullOrEmpty(PWD))
         {
             string _StrErr = tUser.CHECK_SET_LINE_EMPLOYEE(UserId, PWD);
             if (_StrErr == "OK")
             {
                 SendPrgMsg(mLogMsgType.Incoming, "权限正确");
                 Dictionary <string, object> dic = new Dictionary <string, object>();
                 Frm_Public.Frm_Select       fd  = new Frm_Public.Frm_Select(ReleaseData.arrByteToDataTable(sLine.GetAllLineInfo()), ref dic);
                 if (fd.ShowDialog() == DialogResult.OK)
                 {
                     txt_line.Text = dic["线别"].ToString();
                     Encoder.ReadIniFile.IniWriteValue("SFIS_DCT_INPUT", "LINE", Encoder.Encoder.EncryptString(dic["线别"].ToString()), IniFilePath);
                 }
             }
             else
             {
                 SendPrgMsg(mLogMsgType.Error, _StrErr);
             }
         }
     }
     catch
     {
         SendPrgMsg(mLogMsgType.Error, "权限格式不正确");
     }
 }
        public void ProcessData(ReleaseData data, Dictionary <string, List <ChangesetInfo> > categorizedChangesets,
                                IEnumerable <ClientWorkItem> workItems, IEnumerable <ClientWorkItem> pbi)
        {
            var    dTestDocx = @"D:\test.docx";
            string fileName  = @"D:\Template.docx";

            using (var doc = DocX.Load(fileName))
            {
                doc.ReplaceText("{ReleaseName}", data.ReleaseName);
                doc.ReplaceText("{ReleaseDate}", data.ReleaseDateFormated);
                doc.ReplaceText("{TfsBranch}", data.TfsBranch);
                doc.ReplaceText("{QaBuildName}", data.QaBuildName);
                doc.ReplaceText("{QaBuildDate}", data.QaBuildDateFormated);
                doc.ReplaceText("{CoreBuildName}", data.CoreBuildName);
                doc.ReplaceText("{CoreBuildDate}", data.CoreBuildDateFormated);
                doc.ReplaceText("{PsRefreshChangeset}", data.PsRefresh.Id.ToString());
                doc.ReplaceText("{PsRefreshDate}", data.PsRefresh.Created.ToString("yyyy-MM-dd HH:mm", new CultureInfo("en-US")));
                doc.ReplaceText("{PsRefreshName}", data.PsRefresh.Comment);
                doc.ReplaceText("{CoreChangeset}", data.CoreChange.Id.ToString());
                doc.ReplaceText("{CoreDate}", data.CoreChange.Created.ToString("yyyy-MM-dd HH:mm", new CultureInfo("en-US")));
                var lastParagraph = doc.Paragraphs[doc.Paragraphs.Count - 1];
                var secondSection = SecondSection(categorizedChangesets, lastParagraph);
                var thirdSection  = ThirdSection(workItems, secondSection);
                var fourthSection = FourthSection(pbi, thirdSection);

                var fifthSection = fourthSection.CreateHeadingSection("Test Report");
                var sixthSection = fifthSection.CreateHeadingSection("Known issues in this Release");

                doc.SaveAs(dTestDocx);
            }

            Process.Start(dTestDocx);
        }
示例#8
0
 public async Task EnsureReleaseIsMaintainedAsync(ReleaseData release)
 {
     if (!modsStorageService.ReleaseIsCached(release))
     {
         await MaintainReleaseAsync(release);
     }
 }
示例#9
0
 public void EnsureReleaseIsNotMaintained(ReleaseData release, bool shouldDelete)
 {
     if (modsStorageService.ReleaseIsCached(release))
     {
         UnmaintainRelease(release, shouldDelete);
     }
 }
        private void MainWindow_Loaded(object sender, RoutedEventArgs e)
        {
            ProjectCombo.SelectedItem = "FenergoCoreSupport";
            _data = new ReleaseData();
            _data = new ReleaseData {
                TfsProject = "FenergoCore", IterationSelected = @"FenergoCoreSupport\Current\R8.3.1.7", ChangesetFrom = "175971"
            };
            DataContext = _data;

            var tfsUrl = ConfigurationManager.AppSettings["tfsUrl"];

            if (string.IsNullOrWhiteSpace(tfsUrl))
            {
                return;
            }

            _tfs = new TfsConnector(tfsUrl);

            if (!_tfs.IsConnected)
            {
                return;
            }
            ProjectStack.Visibility  = Visibility.Visible;
            ProjectCombo.ItemsSource = _tfs.Projects;
        }
        public void GivenARelease_WhenComparedToAReleaseWithDifferentNameButIdenticalType_ThenTheyAreNotEqual()
        {
            ReleaseData ad1 = new ReleaseData("releaseName1", "demo");
            ReleaseData ad2 = new ReleaseData("releaseName2", "demo");

            Assert.IsFalse(ad1.Equals(ad2));
        }
示例#12
0
 public void UnmaintainRelease(string modName, FactorioVersion version, bool shouldDelete)
 {
     if (shouldDelete && modsStorageService.ReleaseIsStored(modName, version))
     {
         Console.WriteLine($"Deleting    {ReleaseData.GetFileName(modName, version)}.");
         modsStorageService.DiscardRelease(modName, version);
     }
 }
示例#13
0
    // todo: add a new Serializer Clone to SubType method?
    // use property links without subtype instead?
    public ReleaseView(ReleaseData releaseData)
    {
        ReleaseData = releaseData;

        if (int.TryParse(releaseData.Year_of_Release, out int year))
        {
            YearOfRelease = year;
        }
    }
示例#14
0
        /// <summary>
        /// 加载数据
        /// </summary>
        public void LoadInfo()
        {
            dt_snRuleInfo             = ReleaseData.arrByteToDataSet(refWebtB_SnRule_PartNumber.Instance.GetALLB_SnRule_PartNumber()).Tables[0];
            Dg_Cust_PnInfo.DataSource = dt_snRuleInfo;

            Txt_CUST_LAST_BOX.Enabled    = false;
            Txt_CUST_LAST_CARTON.Enabled = false;
            Txt_CUST_LAST_PALLET.Enabled = false;
            Txt_CUST_LAST_SN.Enabled     = false;
        }
示例#15
0
        public async Task MaintainReleaseAsync(ReleaseData release)
        {
            if (!modsStorageService.ReleaseIsStored(release))
            {
                Console.WriteLine($"Downloading {release.GetFileName()}.");
                var bytes = await DownloadReleaseAsync(release);

                modsStorageService.StoreRelease(release, bytes);
            }
        }
示例#16
0
        public void GivenUnparsedResponse_WhenParsingDemoReleaseDataOutOfHtml_ThenHtmlStrippedOffCorrectly()
        {
            var releaseResponseHtml = "<a href=\"https://www.metal-archives.com/albums/%21T.O.O.H.%21/Democratic_Solution/384622\">some wacky demo name (demo)</a> <!-- 7.792132 -->";
            var releaseTypeHtml     = "demo";

            var expected = new ReleaseData("some wacky demo name", "demo");
            var actual   = _parser.GetReleaseData(releaseResponseHtml, releaseTypeHtml);

            Assert.AreEqual(expected, actual);
        }
示例#17
0
        public Release(ReleaseData data)
        {
            MessageDescriptor d = ReleaseData.Descriptor;

            foreach (FieldDescriptor f in d.Fields)
            {
                fields.Add(f.Name, data[f]);
            }

            this.id = this[RELEASE_ID];
        }
        private ReleaseData GetReleaseImages(DatabaseRelease release)
        {
            ReleaseData data = new ReleaseData();

            data.Release = release;

            var searchResult   = this.RunSearch(release);
            var releaseResults = searchResult.Results.Cast <ReleaseSearchResult>().ToArray();
            List <ReleaseSearchResult> releasesToScan = new List <ReleaseSearchResult>();

            var firstReleases = releaseResults.Take(15).Select(r => this.discogs.GetRelease(r.Id)).ToArray();

            if (firstReleases.Any(r => this.MatchTracklist(release, r) && r.Images != null && r.Images.Length > 0))
            {
                foreach (ReleaseSearchResult releaseResult in releaseResults.Take(30))
                {
                    Release discogsRelease = this.discogs.GetRelease(releaseResult.Id);
                    if (this.MatchTracklist(release, discogsRelease) && discogsRelease.Images != null && discogsRelease.Images.Length > 0)
                    {
                        releasesToScan.Add(releaseResult);
                    }
                }
            }
            else
            {
                releasesToScan.AddRange(releaseResults);
            }

            foreach (var releaseResult in releasesToScan)
            {
                if (data.Images.Count >= 9)
                {
                    break;
                }

                var discogsRelease = discogs.GetRelease(releaseResult.Id);
                var image          = discogsRelease.Aggregate.DesiredImage;
                if (image == null)
                {
                    continue;
                }
                var imageData = this.discogs.GetImage(image.Uri);

                data.Images.Add(new ImageItem()
                {
                    Image = image,
                    Data  = imageData
                });
            }

            data.Deduplicate();

            return(data);
        }
示例#19
0
        private void GetStationList(string woId)
        {
            cbroute.Text = "";
            DataTable dt = ReleaseData.arrByteToDataTable(tWoInfo.GetWoInfo(woId, null));

            if (dt.Rows.Count > 0)
            {
                // cbroute.Text = tWoInfo.GetCraftInfoBywoid(woId);
                cbroute.Text = dt.Rows[0]["INPUTGROUP"].ToString();
                ProductLine  = dt.Rows[0]["LINEID"].ToString();
                SendPrgMsg(mLogMsgType.Incoming, string.Format("此工单可在[{0}]线生产", ProductLine));
            }
        }
示例#20
0
        private void InitializationInfo()
        {
            string C_RES = "";

            try
            {
                this.Invoke(new EventHandler(delegate
                {
                    SendMsg(mLogMsgType.Incoming, "正在加载基础数据!");

                    C_RES = "加载串口DLL失败";
                    //  bzz = new Buzzer.buzzer();
                    C_RES = "连接串口失败";
                    //  bzz.ConnPort("SFIS_ISCM");
                    C_RES       = "工单类加载失败";
                    tWoInfo     = new WebServices.tWoInfo.tWoInfo();
                    C_RES       = "公共方法PubStor加载失败";
                    PubStor     = new WebServices.tPublicStoredproc.tPublicStoredproc();
                    C_RES       = "绑定关系接口加载失败";
                    wipkeyparts = new WebServices.tWipKeyPart.tWipKeyPart();
                    C_RES       = "线体信息加载失败";
                    sLine       = new WebServices.tLineInfo.tLineInfo();

                    DataTable dt    = ReleaseData.arrByteToDataTable(sLine.GetAllLineInfo());
                    DataView dv     = dt.DefaultView;
                    dv.Sort         = "线别 ASC";
                    DataTable dTemp = dv.ToTable();

                    cb_Line.Items.Clear();
                    foreach (DataRow dr in dTemp.Rows)
                    {
                        cb_Line.Items.Add(dr["线别"].ToString());
                    }

                    cb_Line.SelectedIndex = 0;
                    C_RES           = "加载SFIS_ISCM.ini失败";
                    string filePath = System.Environment.CurrentDirectory + "\\SFIS_ISCM.ini";
                    LabDir          = ReadIniFile.IniReadValue("TEST_INPUT", "Patch", filePath);

                    LabInput.Text  = "";
                    LabTarget.Text = "";
                    LabRoute.Text  = "";
                    tb_Input.Focus();
                    SendMsg(mLogMsgType.Incoming, "基础数据加载完成!");
                }));
            }
            catch
            {
                SendMsg(mLogMsgType.Error, C_RES);
            }
        }
        public string ProcessData(Change psRefresh, ReleaseData data, List <KeyValuePair <string, List <ChangesetInfo> > > categorizedChangesets,
                                  IEnumerable <ClientWorkItem> workItems, IEnumerable <ClientWorkItem> pbi, string testReport, string dateinputFormat, string templatePath, string releasePath)
        {
            try
            {
                if (!File.Exists(templatePath))
                {
                    return($"Template file not found in following location {templatePath}");
                }

                using (var doc = DocX.Load(templatePath))
                {
                    doc.ReplaceText("{ReleaseName}", data.ReleaseName);
                    doc.ReplaceText("{ReleaseDate}", data.ReleaseDate.ParseAndFormatData(dateinputFormat, data.ReleaseDateOutputFormat));

                    var headers         = new[] { "Item", "Details", "Date" };
                    var location        = $"$/{data.TfsProject}/{data.TfsBranch}";
                    var columnSizes     = new[] { 25f, 45, 30f };
                    var tableWithHeader = doc.Paragraphs[doc.Paragraphs.Count - 1]
                                          .CreateTableWithHeader(headers, columnSizes, 3);

                    tableWithHeader.FillRow(1, new[] { "PS Refresh Changeset", psRefresh.changesetId, psRefresh.createdDate.FormatData() });
                    tableWithHeader.FillRow(2, new[] { "QA Build", data.QaBuildName, data.QaBuildDate.ParseAndFormatData(dateinputFormat, data.QaBuildDateOutputFormat) });

                    doc.InsertParagraph("This release will be available in ")
                    .Append(location, new Formatting {
                        Bold = true
                    })
                    .Append(" branch using the label ")
                    .Append(data.ReleaseName, new Formatting {
                        Bold = true
                    });

                    doc.InsertSectionPageBreak();
                    doc.Paragraphs[doc.Paragraphs.Count - 1]
                    .ChangesetsSection(categorizedChangesets)
                    .WorkItemSection(workItems)
                    .PbiSection(pbi);

                    doc.TestReportSection(testReport).KnownIssuesSection();
                    doc.SaveAs(releasePath);
                }

                return($"Successfully generated document! You can find it in following location | {releasePath}");
            }
            catch (Exception e)
            {
                return(e.Message + "\n" + e.StackTrace);
            }
        }
示例#22
0
 public Task <byte[]> DownloadReleaseAsync(ReleaseData release)
 {
     try
     {
         return(client.DownloadModAsByteArrayAsync(new Release()
         {
             DownloadUrl = release.DownloadUrl,
             Sha1 = release.Sha1,
         }));
     }
     catch (NotImplementedException ex)
     {
         throw new Exception("Invalid username and user token?", ex);
     }
 }
示例#23
0
        /// <summary>
        /// Check for Updates for the Apllication and Install them if available
        /// <param name="mainForm">MainForm of the Application</param>
        /// <paramref name="hideMessages"/>Hide Messages for no update or if update data can't be determinated</paramref>
        /// </summary>
        internal static void CheckForUpdate(IWin32Window mainForm, bool hideMessages)
        {
            UpdateApp   AppUpdater      = new UpdateApp();
            ReleaseData LastReleaseData = AppUpdater.GetLastReleaseData(
                Settings.Default.AppUpdate_Owner,
                Settings.Default.AppUpdate_Name,
                Settings.Default.AppUpdate_ChangeLog,
                Settings.Default.AppUpdate_SetupSearchPattern,
                out Exception GetDataEx);
            ReleaseVersion ActualVersion = new ReleaseVersion(Assembly.GetExecutingAssembly().GetName().Version.ToString());

            // Exit application if update was downloaded
            if (AppUpdater.UpdateDownload(mainForm, ActualVersion, LastReleaseData, GetDataEx, hideMessages))
            {
                Application.Exit();
            }
        }
        public IActionResult UpdateRelease(long id, [FromBody] JsonPatchDocument <ReleaseData> patch)
        {
            Release     release = _context.Releases.Include(r => r.Company).ThenInclude(r => r.Industry).Include(r => r.Company).ThenInclude(r => r.TechnicalPoc).Include(r => r.DevelopedBy).Include(r => r.DeployedBy).ThenInclude(r => r.Region).Include(r => r.Product).Include(r => r.Environment).Include(r => r.EnvironmentType).Include(r => r.Environment).ThenInclude(r => r.Server).Include(r => r.QualityAssurance).ThenInclude(r => r.PerformedBy).Include(r => r.QualityAssurance).ThenInclude(r => r.VerifiedBy).OrderBy(r => r.Company.Name).OrderBy(r => r.Product.Name).OrderByDescending(r => r.DeployedDate).FirstOrDefault(r => r.ReleaseId == id);
            ReleaseData rData   = new ReleaseData {
                Release = release
            };

            patch.ApplyTo(rData, ModelState);
            if (ModelState.IsValid && TryValidateModel(rData))
            {
                if (release.Company != null && release.Company.CompanyId != 0)
                {
                    _context.Attach(release.Company);
                }
                if (release.DeployedBy != null && release.DeployedBy.UserId != 0)
                {
                    _context.Attach(release.DeployedBy);
                }
                if (release.DevelopedBy != null && release.DevelopedBy.UserId != 0)
                {
                    _context.Attach(release.DevelopedBy);
                }
                if (release.Environment != null && release.Environment.EnvironmentId != 0)
                {
                    _context.Attach(release.Environment);
                }
                if (release.EnvironmentType != null && release.EnvironmentType.EnvironmentTypeId != 0)
                {
                    _context.Attach(release.EnvironmentType);
                }
                if (release.Product != null && release.Product.ProductId != 0)
                {
                    _context.Attach(release.Product);
                }
                if (release.QualityAssurance != null && release.QualityAssurance.QualityAssuranceId != 0)
                {
                    _context.Attach(release.QualityAssurance);
                }
                _context.SaveChanges();
                return(Ok());
            }
            else
            {
                return(BadRequest());
            }
        }
        /// <summary>
        /// <para>does not map <see cref="ReleaseData.Dependencies"/></para>
        /// </summary>
        /// <param name="release"></param>
        /// <param name="result"></param>
        /// <returns></returns>
        public ReleaseData MapToReleaseData(ModData mod, Release release, ReleaseData?result = null)
        {
            if (result == null)
            {
                result = new ReleaseData();
            }

            result.Mod             = mod;
            result.DownloadUrl     = release.DownloadUrl;
            result.FactorioVersion = FactorioVersion.Parse(release.InfoJson.FactorioVersion, readPatch: false);
            result.Dependencies ??= new List <ModDependency>();
            result.ReleasedAt = release.ReleasedAt;
            result.Version    = FactorioVersion.Parse(release.Version);
            result.Sha1       = release.Sha1;

            return(result);
        }
    IEnumerator Start()
    {
        currentText.text = currentText.text.Replace("%VERSION%", FormatVersion(CURRENT));
        latestText.gameObject.SetActive(false);

        // Fetch latest version
        using (WWW www = new WWW(LATEST_URL)) {
            // Wait for HTTP request
            yield return(www);

            // Error checking
            if (string.IsNullOrEmpty(www.text))
            {
                goto Failed;                                              // Got data
            }
            if (!string.IsNullOrEmpty(www.error))
            {
                goto Failed;                                               // Some error
            }
            // Parse JSON data
            ReleaseData data = (ReleaseData)JsonUtility.FromJson(www.text, typeof(ReleaseData));
            if (data == null)
            {
                goto Failed;                           // Failed to parse data
            }
            // Trim away everything but numbers and dots
            string tag = Regex.Replace(data.tag_name, "[^0-9.^\\.]", "");
            // Parse into version object
            Version latest = new Version(tag);

            // Check if latest is newer than current
            if (CURRENT.CompareTo(latest) < 0)
            {
                latestText.gameObject.SetActive(true);
                latestText.text = latestText.text.Replace("%VERSION%", FormatVersion(latest));
                downloadPage    = data.html_url;
            }
            goto End;

Failed:
            print("FAILED TO CHECK LATEST VERSION!");

            End :;
        }
    }
示例#27
0
        /// <summary>
        /// 获取自动发料表
        /// </summary>
        private DataTable GetWoKpnumber(string strwo, string process)
        {
            DataTable dt = ReleaseData.arrByteToDataTable(
                RefWebService_BLL.refWebtPartStorehousehad.Instance.GetKpnumberByWoid(strwo, process));
            DataTable mdt = new DataTable("ndt");
            DataRow   mdr;
            bool      flag = false;

            foreach (DataRow dr in dt.Rows)
            {
                DataTable _dt = ReleaseData.arrByteToDataTable(RefWebService_BLL.refWebtPartStorehousehad.Instance.GetKpnumberLocation(dr["kpnumber"].ToString(), int.Parse(dr["qty"].ToString())));//料号,领料数
                if (!flag)
                {
                    flag = true;
                    mdt  = _dt.Clone();
                }
                float count = 0;
                if (_dt == null || _dt.Rows.Count < 1)
                {
                    //mdr.ItemArray = item.ItemArray;
                    mdt.Rows.Add("NA", dr["kpnumber"].ToString(), "无库存", "无库存", 0);
                }
                else
                {
                    foreach (DataRow item in _dt.Rows)
                    {
                        mdr    = mdt.NewRow();
                        count += float.Parse(item["qty"].ToString());
                        if (count < float.Parse(dr["qty"].ToString()))
                        {
                            mdr.ItemArray = item.ItemArray;
                            mdt.Rows.Add(mdr);
                        }
                        else
                        {
                            mdr.ItemArray = item.ItemArray;
                            mdt.Rows.Add(mdr);
                            break;
                        }
                    }
                }
            }
            return(mdt);
        }
示例#28
0
 private void tb_wo_KeyDown(object sender, KeyEventArgs e)
 {
     if (!string.IsNullOrEmpty(tb_wo.Text) && e.KeyCode == Keys.Enter)
     {
         DataTable dtNoCloseCtn = ReleaseData.arrByteToDataTable(refWebtPalletInfo.Instance.Get_Pallet_Info_bywo(tb_wo.Text, 1, 0));
         this.lv_Carton.Items.Clear();
         int x = 1;
         foreach (DataRow dr in dtNoCloseCtn.Rows)
         {
             ListViewItem lvi = new ListViewItem();
             this.lv_Carton.View  = System.Windows.Forms.View.Details;
             lvi.SubItems[0].Text = x++.ToString();
             lvi.SubItems.AddRange(new string[] { dr[0].ToString(), dr[1].ToString(), dr[2].ToString(), dr[3].ToString(), dr[6].ToString(), dr[7].ToString() });
             this.lv_Carton.Items.Add(lvi);
             lv_Carton.AutoResizeColumns(ColumnHeaderAutoResizeStyle.HeaderSize);
         }
         tb_wo.SelectAll();
     }
 }
示例#29
0
        public void PrintLabel(string Esn)
        {
            DataTable dt = ReleaseData.arrByteToDataTable(_wipkeyparts.GetWipKeyPart(Esn));

            if (dt.Rows.Count > 0)
            {
                Dictionary <string, string> dic = new Dictionary <string, string>();
                dic.Add("ESN", dt.Rows[0]["ESN"].ToString());
                foreach (DataRow dr in dt.Rows)
                {
                    dic.Add(dr["SNTYPE"].ToString(), dr["SNVAL"].ToString());
                }
                PublicPrintLabel(dic);
            }
            else
            {
                SendPrgMsg(mLogMsgType.Error, "没有需要打印的数据");
            }
        }
示例#30
0
 private void txt_userid_KeyDown(object sender, KeyEventArgs e)
 {
     if (e.KeyCode == Keys.Enter)
     {
         if (Check_EMP(txt_userid.Text.ToString()))
         {
             sEMP            = txt_userid.Text.ToString();
             txt_userid.Text = ReleaseData.arrByteToDataTable(tUser.GetUserInfoByUserId(sEMP.Split('-')[0].ToString())).Rows[0]["username"].ToString();
         }
         else
         {
             txt_userid.SelectAll();
             txt_userid.Focus();
             return;
         }
         txt_userid.Enabled = false;
         txt_sn.Enabled     = true;
         txt_sn.Focus();
     }
 }
        private ReleaseData GetReleaseImages(DatabaseRelease release)
        {
            ReleaseData data = new ReleaseData();
            data.Release = release;

            var searchResult = this.RunSearch(release);
            var releaseResults = searchResult.Results.Cast<ReleaseSearchResult>().ToArray();
            List<ReleaseSearchResult> releasesToScan = new List<ReleaseSearchResult>();

            var firstReleases = releaseResults.Take(15).Select(r => this.discogs.GetRelease(r.Id)).ToArray();
            if (firstReleases.Any(r => this.MatchTracklist(release, r) && r.Images != null && r.Images.Length > 0))
            {
                foreach (ReleaseSearchResult releaseResult in releaseResults.Take(30))
                {
                    Release discogsRelease = this.discogs.GetRelease(releaseResult.Id);
                    if (this.MatchTracklist(release, discogsRelease) && discogsRelease.Images != null && discogsRelease.Images.Length > 0)
                    {
                        releasesToScan.Add(releaseResult);
                    }
                }
            }
            else
            {
                releasesToScan.AddRange(releaseResults);
            }

            foreach (var releaseResult in releasesToScan)
            {
                if (data.Images.Count >= 9)
                {
                    break;
                }

                var discogsRelease = discogs.GetRelease(releaseResult.Id);
                var image = discogsRelease.Aggregate.DesiredImage;
                if (image == null)
                {
                    continue;
                }
                var imageData = this.discogs.GetImage(image.Uri);

                data.Images.Add(new ImageItem()
                {
                    Image = image,
                    Data = imageData
                });
            }

            data.Deduplicate();

            return data;
        }
        private bool ChooseReleasePicture(ReleaseData releaseData, int releaseNumber)
        {
            List<ImageViewModel> images = new List<ImageViewModel>();
            foreach (ImageItem imageItem in releaseData.Images)
            {
                ImageViewModel imageViewModel = new ImageViewModel(imageItem);
                images.Add(imageViewModel);
            }

            string title = "Choose image for release " + releaseNumber + "/" + this.totalReleases + " - " + releaseData.Release.JoinedAlbumArtists + " - " + releaseData.Release.Title;

            bool pickResult = false;

            this.waitWindow.Dispatcher.Invoke(() =>
            {
                ImagePicker picker = new ImagePicker(title, images);
                if (picker.ShowDialog() == true)
                {
                    ImageViewModel selectedItem = (ImageViewModel)picker.SelectedItem;
                    this.UpdateImageForRelease(releaseData, selectedItem);
                    pickResult = true;
                }
                else if (picker.IsSkipped)
                {
                    pickResult = true;
                }
                else
                {
                    pickResult = false;
                }
            });

            return pickResult;
        }
示例#33
0
        void CheckForUpdates()
        {
            //try to retrieve the version info file.
            try
            {
                if (!retrievingFile)
                {
                    startMessage = "";

                    //start retrieving the file...
                    //WWW files don't download immediately, and they don't block the main update thread, so we need
                    //to make sure that we wait until it's done downloading.  We check for this below.
                    updateInfo = new WWW(updateInfoUrl);
                }

                //once we're sure we have the file (and it's completely downloaded), proceed.
                if (updateInfo != null && updateInfo.isDone)
                {
                    startMessage = "";
                    retrievingFile = false;

                    EditorApplication.update -= CheckForUpdates;

                    //create a new XmlDocument...
                    XmlDocument xmlDocument = new XmlDocument();

                    //And fill it with the raw Xml text from our WWW file.
                    xmlDocument.LoadXml(updateInfo.text);

                    //Start searching nodes under updateinfo..
                    System.Xml.XmlNodeList releaseNodes = xmlDocument.SelectNodes("/updateinfo/release");
                    releases = new ReleaseData[releaseNodes.Count];

                    int currentNode = 0;
                    foreach (XmlNode node in releaseNodes)
                    {
                        ReleaseData releaseInfo = new ReleaseData();

                        try //try to retrieve the node...
                        {
                            //pull out our version number...
                            releaseInfo.version = double.Parse(node.Attributes["version"].Value, System.Globalization.NumberFormatInfo.InvariantInfo);
                        }
                        catch //if we can't retrieve the version node, something horrible has happened.
                        {
                            //tell the user to contact support, since there's probably an issue with the XML file...
                            startMessage = "Could not parse version number.  Please contact support.";
                            releases[currentNode] = null;

                            //force the GUI to redraw, since our message should need changing.
                            GUI.changed = true;
                            Repaint();
                        }
                        try //try to retrieve the node...
                        {
                            //and then pull out our changelog.
                            releaseInfo.changelog = node.Attributes["changelog"].Value;
                        }
                        catch { releaseInfo.changelog = ""; } //if we can't retrieve the node, set it to nothing

                        try //try to retrieve the node...
                        {
                            //and then pull out our changelog's URL.
                            releaseInfo.changelogURL = node.Attributes["changelogURL"].Value;
                        }
                        catch { releaseInfo.changelogURL = ""; } //if we can't retrieve the node, set it to nothing

                        releases[currentNode] = releaseInfo;

                        //increment the node...
                        currentNode++;
                    }

                    //set the release data that we use...
                    //We only use the most recent update, but we may allow for old version checking later, since we
                    //already have the data...
                    release = releases[0];

                    //if we have a new update, or if the user has a newer update (future update), disable the button.
                    if (release.version != assetVersion)
                    {
                        isNewUpdate = true;
                    }

                    //force the GUI to redraw, since our message should need changing.
                    GUI.changed = true;
                    Repaint();
                }
                else
                {
                    //Update the main message so the user knows something is happening.
                    startMessage = "Retrieving version information...";

                    //make sure we know we're retrieving the file.
                    retrievingFile = true;
                }
            }
            catch //if we can't retrieve it, let the user know that we couldn't retrieve it.
            {
                startMessage = "Error!";
                release = null;

                //force the GUI to redraw, since our message should need changing.
                GUI.changed = true;
                Repaint();
            }
        }
        private void UpdateImageForRelease(ReleaseData releaseData, ImageViewModel selectedItem)
        {
            string extension = Path.GetExtension(selectedItem.DiscogsImage.Uri);
            string mimeType = MimeHelper.GetMimeTypeForExtension(extension);
            DatabaseImage image = new DatabaseImage()
            {
                Description = "Auto import from Discogs",
                Extension = extension,
                IsMain = true,
                MimeType = mimeType,
                Type = ImageType.FrontCover
            };

            releaseData.Release.Images.Add(image);
            releaseData.Release.DateModified = DateTime.Now;
            this.CollectionManager.ImageHandler.StoreImage(image, selectedItem.Data);
            ThumbnailGenerator.UpdateReleaseThumbnail(releaseData.Release, this.CollectionManager.ImageHandler);
            this.CollectionManager.Save(releaseData.Release);

            this.CollectionManager.Operations.WriteTags(releaseData.Release);
        }
 //**********************************************************************
 // Appends the specified exception in the Kofax error log
 //**********************************************************************
 private void LogException(ReleaseData data,
     Exception e)
 {
     if (data != null)
     {
         // Use the Kofax logging handler
         data.LogError(
             0,
             0,
             0,
             "Processing batch : " + data.BatchName + ". " + e.ToString(),
             e.Source,
             0
             );
     }
 }