コード例 #1
0
        public async Task <ActionResult> Cancel(IFormCollection collection)
        {
            var command = new CancelRelatoCommand
            {
                CodRelato = int.Parse(collection["CodRelato"].ToString()),
                //Rn0040
                DscMotivoCancelamento = collection["DscMotivoCancelamento"].ToString(),
                //Rn0041
                FlgStatusRelato = (int)EnumStatusRelato.Cancelado,
                DscCancelamento = "Ocorrência cancelada, " + DateTime.Now.ToString("dd/MM/yyyy") + ", " + DateTime.Now.ToString("hh:mm"),
                AlteradoPor     = User.Identity.Name,
            };

            var relato = ApiClientFactory.Instance.GetRelatoById(command.CodRelato);

            //Rn0092
            int[] arrStatus = { (int)EnumStatusRelato.NaoIniciado, (int)EnumStatusRelato.Ocorrenciaclassificada, (int)EnumStatusRelato.Cancelado };

            if (arrStatus.Contains(relato.FlgStatusRelato))
            {
                await ApiClientFactory.Instance.CancelRelato(command);

                //Rn0042
                if (!string.IsNullOrEmpty(relato.EmailRelator))
                {
                    await SendRn0042Email(relato);
                }
            }
            else
            {
                return(RedirectToAction(nameof(Index), new { notify = (int)EnumNotify.Warning, message = "O relato poderá ser cancelado somente antes de ser iniciado (Classificado)." }));
            }

            return(RedirectToAction(nameof(Index), new { crud = (int)EnumCrud.Updated }));
        }
コード例 #2
0
        public Task <long> CancelRelato(CancelRelatoCommand command)
        {
            var requestUrl = CreateRequestUri(string.Format(System.Globalization.CultureInfo.InvariantCulture,
                                                            $"{ResourceRelato}/CancelRelato"));

            return(Post(requestUrl, command));
        }
コード例 #3
0
        public async Task <ActionResult <long> > CancelRelato(CancelRelatoCommand command)
        {
            try
            {
                var result = await Mediator.Send(command);

                return(result);
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                throw;
            }
        }