예제 #1
0
        public TResult <AppOsDetailsViewModel> GetAvailbleAppDescription(string appID, int appOsID, byte osType)
        {
            List <WisAppOsOther> wisAppOsOther = new List <WisAppOsOther>();
            WisAppList           wisAppList    = _appListService.GetAppName(appID);
            List <WisAppOs>      wisAppOs      = _appListService.GetAppOs(appID);
            List <WisAppPhoto>   wisAppPhoto   = _uploadFileService.GetPhotos(appID);

            AppDescription appDescription = _mapper.Map <WisAppList, AppDescription>(wisAppList);

            //取當前版
            AppOsInfo appNowVersion = _mapper.Map <WisAppOs, AppOsInfo>(
                wisAppOs.Where(
                    p => p.OSType == osType &&
                    p.Status == AppStatus.EnableBool &&
                    p.DelFlag == false &&
                    p.WebDownFlag == true &&
                    p.AppOSID == appOsID)?.OrderByDescending(p => p.CreateDT).FirstOrDefault());

            //是否要取得多載點 的path路徑
            if (appNowVersion.MultipleDownload)
            {
                wisAppOsOther = _uploadFileService.GetWisAppOsOther(appID, appOsID.ToString());
            }

            //至少會有 WisAppOS table 原始台灣載點路徑
            wisAppOsOther.Add(new WisAppOsOther {
                Site = "WHQ", FilePath = appNowVersion.FilePath
            });

            //組成完整載點路徑: endpoint+path url
            List <DownloadUrlList> downloadUrlList = UploadFileHepler.GetDownloadUrlList(_configContext.OtherSideEndPoint, wisAppOsOther);

            //歷史紀錄 前5筆
            List <AppOsInfo> appHistory = _mapper.Map <List <WisAppOs>, List <AppOsInfo> >(
                wisAppOs.Where(
                    p => p.OSType == osType &&
                    p.DelFlag == false
                    )?.OrderByDescending(p => p.CreateDT).Take(5).ToList());

            //圖片資訊 FileNumber = 5 為 icon 圖片
            List <AppPhotoContent> photo = _mapper.Map <List <WisAppPhoto>, List <AppPhotoContent> >(wisAppPhoto.Where(p => p.AppOS == osType)?.OrderBy(p => p.FileNumber).ToList());

            AppOsDetailsViewModel viewModel = new AppOsDetailsViewModel
            {
                Description   = appDescription,
                AppNowVersion = appNowVersion,
                AppOsHistory  = appHistory,
                Photo         = photo,
                DownloadList  = downloadUrlList
            };

            return(TResult <AppOsDetailsViewModel> .OK(viewModel, "OK"));
        }
예제 #2
0
        private void listViewApps_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            int            selectedIndex = listViewApps.SelectedIndex;
            AppDescription app           = ApplicationList[selectedIndex];

            AssociationManager.SaveAssociatedApplication(app.ProgId, ".pdf");
            DefaultApplication = AssociationManager.GetAssociatedApplication(".pdf");
            imgDefault.Source  = DefaultApplication.Icon;
            txtDefault.Text    = DefaultApplication.Name;

            /*Process proc = new Process();
             * proc.StartInfo.FileName = programPath;
             * proc.StartInfo.WorkingDirectory = System.IO.Path.GetDirectoryName(programPath);
             * proc.Start();*/
        }
예제 #3
0
 public static void EmailToSupport()
 {
     Process.Start($"mailto:[email protected]?subject={AppDescription.Replace(" ", "%20")}%20({AppVersion})");
 }