예제 #1
0
        /// <summary>
        /// 人员信息上传完成事件处理程序。
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        static void WorkerInfoUploadCompletedEventHandler(object sender, UploadCompletedEventArgs e)
        {
            bool   isSuccess = false;
            string code      = e.UploadedResult.code;
            string status    = e.UploadedResult.data?["status"]?.ToString();

            if (OutputCode.成功.Equals(code) && AsyncStatus.处理成功.Equals(status))
            {
                isSuccess = true;
            }
            else if (OutputCode.人员已存在.Equals(code))
            {
                isSuccess = true;
            }

            // 只有人员上传成功,才进行考勤信息上传
            if (!isSuccess)
            {
                return;
            }

            var workers = (ProjectWorker)e.UploadedData;
            WorkerAttendanceUploader attendanceUploader = new WorkerAttendanceUploader(workers);

            attendanceUploader.UploadCompleted += UploadCompletedEventDebugLogHandler;

            attendanceUploader.BeginUpload();
        }
예제 #2
0
        /// <summary>
        /// 人员上传成功后(或已上传过),记录下来。
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        static void SaveWorkerInfo(object sender, UploadCompletedEventArgs e)
        {
            bool   isSuccess = false;
            string code      = e.UploadedResult.code;
            string status    = e.UploadedResult.data?["status"]?.ToString();

            if (OutputCode.成功.Equals(code) && AsyncStatus.处理成功.Equals(status))
            {
                isSuccess = true;
            }
            else if (OutputCode.人员已存在.Equals(code))
            {
                isSuccess = true;
            }

            if (!isSuccess)
            {
                return;
            }

            // 只有人员上传成功
            var w = (ProjectWorker)e.UploadedData;

            LogUtils4Worker.Logger.Info($"{ HjApiCaller.ProjectName },{ w.corpName },{ w.teamName },'{ w.workerList.FirstOrDefault()?.associated.id_card },{ w.workerList.FirstOrDefault()?.workerName }");
        }
예제 #3
0
        /// <summary>
        /// 班组信息上传完成事件处理程序。
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        static void TeamInfoUploadCompletedEventHandler(object sender, UploadCompletedEventArgs e)
        {
            bool   isSuccess = false;
            string code      = e.UploadedResult.code;
            string status    = e.UploadedResult.data?["status"]?.ToString();

            if (OutputCode.成功.Equals(code) && AsyncStatus.处理成功.Equals(status))
            {
                isSuccess = true;
            }
            else if (OutputCode.重复上传.Equals(code))
            {
                isSuccess = true;
            }

            // 只有班组上传成功,才进行人员信息上传
            if (!isSuccess)
            {
                return;
            }

            var data      = (Team)e.UploadedData;
            var teamSysNo = e.UploadedResult?.data["result"]["teamSysNo"]?.ToString();

            ProjectWorkerUploader workerUploader = new ProjectWorkerUploader(teamSysNo, data);

            workerUploader.UploadCompleted += UploadCompletedEventDebugLogHandler;
            // 人员上传成功后,上传考勤
            workerUploader.UploadCompleted += WorkerInfoUploadCompletedEventHandler;

            workerUploader.BeginUpload();
        }
예제 #4
0
        /// <summary>
        /// 参建单位上传完成事件处理程序。
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        static void CooperatorInfoUploadCompletedEventHandler(object sender, UploadCompletedEventArgs e)
        {
            bool   isSuccess = false;
            string code      = e.UploadedResult.code;
            string status    = e.UploadedResult.data?["status"]?.ToString();

            if (OutputCode.成功.Equals(code) && AsyncStatus.处理成功.Equals(status))
            {
                isSuccess = true;
            }
            else if (OutputCode.重复上传.Equals(code))
            {
                isSuccess = true;
            }

            // 只有单位上传成功,才进行班组信息上传
            if (!isSuccess)
            {
                return;
            }

            var data = (ProjectSubContractor)e.UploadedData;
            // 上传班组信息
            TeamInfoUploader uploader = new TeamInfoUploader(data.projectCode, data.associated.cooperator_id);

            uploader.UploadCompleted += UploadCompletedEventDebugLogHandler;        // 打印调试日志
            uploader.UploadCompleted += TeamInfoUploadSucceedEventHandler;          // 记录生成编号
            uploader.UploadCompleted += TeamInfoUploadCompletedEventHandler;        // 上传人员信息

            uploader.BeginUpload();
        }
예제 #5
0
        private void UploadCompleted(object sender, UploadCompletedEventArgs e)
        {
            UserTask task = e.UserState as UserTask;

            task.TaskStatus = "Processing";

            task.TaskId = e.Result.Id.ToString();
        }
예제 #6
0
 private void UploadCompleted(object sender, UploadCompletedEventArgs e)
 {
     Dispatcher.BeginInvoke(() =>
     {
         displayMessage("Upload completed. Processing..");
     }
                            );
 }
예제 #7
0
        private void uplAttachment_UploadFileCompleted(object sender, UploadCompletedEventArgs e)
        {
            UploadFileResult result = e.Result;

            txtAttachmentName.Text   = result.Name;
            _planning.Attachment     = System.IO.File.ReadAllBytes(result.TempFileFullName);
            _planning.AttachmentName = result.Name;
            System.IO.File.Delete(result.TempFileFullName);
        }
 private void UploadCompleted(object sender, UploadCompletedEventArgs e)
 {
     _sync.Post(x =>
     {
         var task        = (UserTask)e.UserState;
         task.TaskStatus = "Processing";
         task.TaskId     = e.TaskInfo.TaskId.ToString();
     }, null);
 }
예제 #9
0
 public void UploadCompleted(object sender, UploadCompletedEventArgs e)
 {
     Completed = true;
     if (e.Error)
     {
         throw e.Exception;          //Throw any errors
     }
     if (IsHandleCreated)
     {
         Invoke(new MethodInvoker(delegate { DialogResult = DialogResult.OK; }));
     }
 }
예제 #10
0
        private static void UploadCompleted(object sender, UploadCompletedEventArgs e)
        {
            var task = e.UserState as UserTask;

            if (task == null)
            {
                return;
            }

            task.TaskStatus = "Processing";
            task.TaskId     = e.Result.Id.ToString();
        }
        /// <summary>
        /// Notifies the client of upload halt.
        /// </summary>
        /// <param name="haltReason">The halt reason.</param>
        /// <param name="errorMessage">The error message.</param>
        private void NotifyClient(UploadCompleteReason haltReason, string errorMessage = "")
        {
            EventHandler <UploadCompletedEventArgs> intermediateHandler = this.UploadFinished;

            if (intermediateHandler != null)
            {
                var uploadCompletedEventArgs = new UploadCompletedEventArgs()
                {
                    ErrorMessage = errorMessage,
                    Reason       = haltReason,
                    UploadedFile = this.file
                };
                intermediateHandler(this, uploadCompletedEventArgs);
            }
        }
예제 #12
0
        private void OnRangeUploadDataCompleted(Object sender, System.Net.UploadDataCompletedEventArgs e)
        {
            lock (infoLock) {
                WebClient client = (WebClient)sender;

                this.uploadedBytes += uploadInfos[client].totalBytes;

                uploadInfos.Remove(client);

                if (e.Cancelled || e.Error != null)
                {
                    if (e.Cancelled)
                    {
                        cancelled = true;
                    }

                    if (e.Error != null)
                    {
                        lastError = e.Error;
                    }
                }
                else
                {
                    int statusCode = GetStatusCode(client);

                    if (statusCode == 206)
                    {
                        UploadNextRange();
                    }
                    else if (statusCode == 200)
                    {
                    }
                }

                if (uploadInfos.Count == 0)
                {
                    UploadCompletedEventArgs ee = new UploadCompletedEventArgs();
                    ee.Cancelled = cancelled;
                    ee.Error     = lastError;

                    uploadCompletedEvent.Set();

                    UploadCompleted(this, ee);
                }

                client.Dispose();
            }
        }
예제 #13
0
        void Uploader_Completed(object sender, UploadCompletedEventArgs e)
        {
            Gtk.Application.Invoke(delegate
            {
                _uploadFinished = true;

                if (!e.Canceled)
                {
                    string newLine = Environment.NewLine;

                    Gtk.MessageDialog dialog;
                    if (e.HasError)
                    {
                        string txt = string.Format("An error occurred in the upload.{0}{0}You will need to upload your file manually:{0}{0}{1}", newLine, _fileName);
                        dialog     = new Gtk.MessageDialog(
                            this,
                            Gtk.DialogFlags.Modal,
                            Gtk.MessageType.Info,
                            Gtk.ButtonsType.Ok,
                            txt
                            );
                    }
                    else
                    {
                        using (Gtk.Clipboard clipboard = Gtk.Clipboard.Get(Gdk.Atom.Intern("CLIPBOARD", false)))
                        {
                            clipboard.Text = e.Link;
                        }

                        string txt = string.Format("Done!{0}{0}{1}{0}{0}The link is already on your clipboard.", newLine, e.Link);
                        dialog     = new Gtk.MessageDialog(
                            this,
                            Gtk.DialogFlags.Modal,
                            Gtk.MessageType.Info,
                            Gtk.ButtonsType.Ok,
                            txt
                            );
                    }

                    dialog.Run();
                    dialog.Destroy();
                }

                Destroy();
            });
        }
        /// <summary>
        /// Called when upload completes.
        /// </summary>
        /// <param name="sender">The sender.</param>
        /// <param name="e">The <see cref="SLBlobUploader.Code.Infrastructure.UploadCompletedEventArgs"/> instance containing the event data.</param>
        private void OnUploadCompleted(object sender, UploadCompletedEventArgs e)
        {
            this.Dispatcher.BeginInvoke(() =>
            {
                if (this.userFile != null)
                {
                    switch (e.Reason)
                    {
                    case UploadCompleteReason.UploadCommitted:
                        var duration         = DateTime.Now - this.operationStartTime;
                        var fileSizeInKB     = (float)userFile.FileStream.Length / BytesPerKb;
                        var fileSizeMessage  = fileSizeInKB > BytesPerKb ? string.Concat(((float)fileSizeInKB / BytesPerKb).ToString(CultureInfo.CurrentCulture), " MB") : string.Concat(fileSizeInKB.ToString(CultureInfo.CurrentCulture), " KB");
                        this.lblMessage.Text = string.Format(CultureInfo.CurrentCulture, ApplicationResources.SuccessfulUpload, fileSizeMessage, duration.TotalSeconds);
                        break;

                    case UploadCompleteReason.ErrorOccurred:
                        this.lblMessage.Text = string.Format(CultureInfo.CurrentCulture, ApplicationResources.UploadFailed, e.ErrorMessage);
                        break;

                    case UploadCompleteReason.UserCanceled:
                        if (!sasExpired)
                        {
                            this.lblMessage.Text = string.Format(CultureInfo.CurrentCulture, ApplicationResources.UploadCancelled);
                        }

                        break;

                    default:
                        this.lblMessage.Text = string.Format(CultureInfo.CurrentCulture, ApplicationResources.UnknownErrorOccured);
                        break;
                    }

                    this.userFile = null;
                }

                this.btnUpload.Content         = UploadButtonText;
                this.txtFileName.Text          = string.Empty;
                this.prgUpload.IsIndeterminate = false;
                this.btnUpload.IsEnabled       = false;
                this.btnBrowse.IsEnabled       = true;
            });
        }
예제 #15
0
        private void Xbox_UploadFileCompleted(object sender, UploadCompletedEventArgs e)
        {
            //Invoke
            Invoke(new MethodInvoker(delegate
            {
                //Increment
                m_CurrentFileCount++;

                //Get attributes
                FileInfo info = new FileInfo(m_CurrentUpload.Key);

                //Set
                Xbox.SetAttributes(m_CurrentUpload.Value, info.CreationTime, info.LastWriteTime, info.Attributes);
                Xbox.SendBufferSize = m_XboxSendBufferSize;

                //Disconnect
                Xbox.Disconnect();

                //Check
                if (m_UploadQueue.Count > 0)
                {
                    //Connect
                    Xbox.Connect();

                    //Send next
                    m_CurrentUpload = m_UploadQueue.Dequeue();
                    UploadFile(m_CurrentUpload.Key, m_CurrentUpload.Value);
                }
                else
                {
                    DialogResult = DialogResult.OK;
                }

                //Set progress
                totalProgressBar.Value = (m_CurrentFileCount * 100) / m_FileCount;
                fileProgressBar.Value  = 0;
            }));
        }
예제 #16
0
        /// <summary>
        /// 班组信息上传完成(成功)事件处理程序。
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        static void TeamInfoUploadSucceedEventHandler(object sender, UploadCompletedEventArgs e)
        {
            bool   isSuccess = false;
            string code      = e.UploadedResult.code;
            string status    = e.UploadedResult.data.SelectToken("status")?.ToString();

            if (OutputCode.成功.Equals(code) &&
                AsyncStatus.处理成功.Equals(status) &&
                !e.HasSuccessfulUploaded)
            {
                isSuccess = true;
            }

            if (!isSuccess)
            {
                return;
            }

            var team      = (Team)e.UploadedData;
            var teamSysNo = e.UploadedResult?.data["result"]["teamSysNo"]?.ToString();

            team.RecordTeamSysNo2File(teamSysNo);
        }
예제 #17
0
        void uploadImoportFile_UploadCompleted(object sender, UploadCompletedEventArgs args)
        {
            uploadImoportFile.Clear();

            if (args.UploadResult == SingleFileUploadStatus.Failed)
            {
                CPApplication.Current.CurrentPage.Context.Window.Alert("上传文件失败!");
                return;
            }
            if (IsPromotionSchedule)
            {
                new CountdownFacade(CPApplication.Current.CurrentPage).BatchImportSchedule(new CountdownInfo()
                {
                    FileIdentity = args.ServerFilePath, PMRole = this.PMRole
                }, (obj, arg) =>
                {
                    if (arg.FaultsHandle())
                    {
                        return;
                    }
                });
            }
            else
            {
                new CountdownFacade(CPApplication.Current.CurrentPage).BatchImportCountDown(new CountdownInfo()
                {
                    FileIdentity = args.ServerFilePath, PMRole = this.PMRole
                }, (obj, arg) =>
                {
                    if (arg.FaultsHandle())
                    {
                        return;
                    }
                });
            }
        }
예제 #18
0
 /// <summary>
 /// 上传完成事件日志处理程序。
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 static void UploadCompletedEventDebugLogHandler(object sender, UploadCompletedEventArgs e)
 {
     //LogUtils4Debug.Logger.Debug($"The args of { sender.GetType().Name }.UploadCompleted: { e.Serialize2JSON() }");
 }
예제 #19
0
 private void UploadDicomFileCompleted(object sender, UploadCompletedEventArgs e)
 {
     string guid = e.Result;
     _laboratoryDomainContext.UploadDicomFile(guid, OnInvokeUploadDicomFileCompleted, null);
 }
예제 #20
0
 /// <summary>
 /// Triggers the <see cref="OnUploadCompleted"/> event. Allows interception of the event in derived components.
 /// </summary>
 protected virtual Task InvokeOnUploadCompletedAsync(UploadCompletedEventArgs args) => OnUploadCompleted.InvokeAsync(args);
예제 #21
0
        private void uploadBox_UploadFileCompleted(object sender, UploadCompletedEventArgs e)
        {
            UploadFileResult result = e.Result;

            _UploadedFiles.Add(result.TempFileFullName);
        }
예제 #22
0
 void proxy_UploadCompleted(object sender, UploadCompletedEventArgs e)
 {
     // ok
     this.progressBar.Visibility = System.Windows.Visibility.Collapsed;
 }
예제 #23
0
파일: Upload2.cs 프로젝트: bfhhq/csharp-sdk
        private void OnRangeUploadDataCompleted(Object sender, System.Net.UploadDataCompletedEventArgs e)
        {
            lock (infoLock) {

                WebClient client = (WebClient)sender;

                this.uploadedBytes += uploadInfos[client].totalBytes;

                uploadInfos.Remove(client);

                if (e.Cancelled || e.Error != null) {

                    if (e.Cancelled)
                        cancelled = true;

                    if (e.Error != null)
                        lastError = e.Error;

                } else {
                    int statusCode = GetStatusCode(client);

                    if (statusCode == 206) {
                        UploadNextRange();
                    } else if (statusCode == 200) {
                    }
                }

                if (uploadInfos.Count == 0) {
                    UploadCompletedEventArgs ee = new UploadCompletedEventArgs();
                    ee.Cancelled = cancelled;
                    ee.Error = lastError;

                    uploadCompletedEvent.Set();

                    UploadCompleted(this, ee);
                }

                client.Dispose();
            }
        }