Ejemplo n.º 1
0
        public async Task <IActionResult> Audit(CreateAuditViewModel model)
        {
            var resume = await _resumeManager.FindByIdAsync(model.ResumeId);

            if (resume == null)
            {
                return(NotFound(model.ResumeId));
            }

            var auditRecord = Mapper.Map <ResumeAuditRecord>(model);
            await _resumeManager.AuditAsync(resume, model.Passed, UserIdentifier.UserId.Value, auditRecord);

            Notifier.Success("你已成功提交了审核信息!");

            //通知负责人
            //if (resume.AuditStatus == AuditStatus.Complete)
            //{
            //    var notification = new NotifyEntry()
            //    {
            //        Content = $"我审核通过了一条简历记录,<a href=\"/Resume/View/{resume.Id}\">查看简历</a>",
            //        Receivers = new List<Guid>()
            //        {
            //            resume.CreatedBy
            //        }
            //    };
            //    await Notifier.NotifyAsync(notification);
            //}


            return(RedirectToAction(nameof(List)));
        }
Ejemplo n.º 2
0
        public async Task <IActionResult> Audit(CreateAuditViewModel model)
        {
            var resume = await _resumeManager.FindByIdAsync(model.ResumeId);

            if (resume == null)
            {
                return(NotFound(model.ResumeId));
            }

            var auditRecord = Mapper.Map <ResumeAuditRecord>(model);
            await _resumeManager.AuditAsync(resume, model.Passed, UserIdentifier.UserId.Value, auditRecord);

            Notifier.Success("你已成功提交了审核信息!");


            return(RedirectToAction(nameof(List)));
        }
        private void SaveExecute()
        {
            var playerId   = 0;
            var customerId = 0;

            var customersId = new List <int>();

            var customers = Customer.Split(',', ';').ToList();
            var players   = Player.Split(',', ';').ToList();

            var users = CheckCorrectUser();

            List <FieldUserValue> customersList = new List <FieldUserValue>();

            foreach (var customer in customers)
            {
                var correctUserName = customer.TrimStart(' ');
                customersList.Add(FieldUserValue.FromUser(correctUserName));
            }

            List <FieldUserValue> playersList = new List <FieldUserValue>();

            foreach (var player in players)
            {
                var correctUserName = player.TrimStart(' ');
                playersList.Add(FieldUserValue.FromUser(correctUserName));
            }


            //foreach (User user in users)
            //{
            //  if (!string.IsNullOrEmpty(Player) && user.Title.Contains(Player))
            //    playerId = user.Id;
            //  //if (!string.IsNullOrEmpty(Customer) && user.Title.Contains(Customer))
            //  //  customerId = user.Id;

            //  foreach (var customer in customersList)
            //  {
            //    if (user.Title.Contains(customer.LookupValue))
            //      customerId += 1;
            //  }
            //}
            //if (!string.IsNullOrEmpty(Customer) && customerId == 0)
            //{
            //  MessageBox.Show($"Заказчик {Customer} не найден. Проверьте правильность заполнения поля");
            //  return;
            //}
            //if (!string.IsNullOrEmpty(Customer) || (customersList.Count() > 1 ))
            //{
            //  if (customersList.Count() > 1)
            //    MessageBox.Show($"Заказчики {Customer} не найдены. Проверьте правильность заполнения поля");
            //  else
            //    MessageBox.Show($"Заказчик {Customer} не найден. Проверьте правильность заполнения поля");
            //  return;
            //}
            //if (!string.IsNullOrEmpty(Player) && playerId == 0)
            //{
            //  MessageBox.Show($"Исполнитель {Player} не найден. Проверьте правильность заполнения поля");
            //  return;
            //}

            var selectedAudit = new AuditItem
            {
                Audit    = Audit,
                Comment  = Comment,
                Version  = Version,
                Plata    = Plata,
                Player   = Player,
                Customer = Customer,
                Order    = Order,
            };

            //Редактировать ревизию в БД
            EditAuditToDB(selectedAudit);

            //Редактировать ревизию на портале
            CreateAuditViewModel.UpdateFieldInShPoint(null, selectedAudit, customerId, playerId, customers, players);

            var special = (EditAuditConfirmation)Notification;

            special.Confirmed = true;
            special.Audit     = Audit;
            special.Comment   = Comment;
            special.Version   = Version;
            special.Plata     = Plata;
            special.Player    = Player;
            special.Customer  = Customer;
            special.Order     = Order;

            FinishInteraction();
        }
Ejemplo n.º 4
0
        public async Task <IActionResult> Audit(Guid id)
        {
            var resume = await _resumeManager.FindByIdAsync(id);

            if (resume == null)
            {
                return(NotFound(id));
            }

            var model = new CreateAuditViewModel();
            //审批记录
            var auditedRecords = await _resumeQuerier.GetResumeAuditRecordsAsync(id);

            //审批设置
            var auditedSettings = await _resumeAuditSettingManager.GetAuditSettingsAsync();

            model.ResumeId     = id;
            model.AuditRecords = new List <AuditRecordModel>();
            foreach (var item in auditedSettings.OrderBy(o => o.Order))
            {
                var auditRecord = auditedRecords.FirstOrDefault(w => w.CreatorUserId == item.UserId);

                if (auditRecord != null)
                {
                    model.AuditRecords.ForEach(f =>
                    {
                        if (!f.Passed.HasValue)
                        {
                            f.Remark = "已跳过该审核人员。";
                        }
                    });
                    var auditRecordModel = Mapper.Map <AuditRecordModel>(auditRecord);
                    model.AuditRecords.Add(auditRecordModel);
                    if (!auditRecord.Passed)
                    {
                        break;
                    }
                }
                else
                {
                    model.AuditRecords.Add(new AuditRecordModel()
                    {
                        CreatorUserName = item.UserName
                    });
                }
            }

            /*
             * 审批检查
             */
            // ①当前用户是审批流程中的用户;
            var auditedSetting = auditedSettings.FirstOrDefault(f => f.UserId == UserIdentifier.UserId);

            if (auditedSetting == null)
            {
                return(View(model));
            }
            // ②当前用户不存在审核记录;
            var auditedRecord = auditedRecords.FirstOrDefault(f => f.CreatorUserId == UserIdentifier.UserId);

            if (auditedRecord != null)
            {
                return(View(model));
            }

            //  ③当前审批状态未完成
            if (resume.AuditStatus == AuditStatus.NoStart || resume.AuditStatus == AuditStatus.Ongoing)
            {
                model.IsEnabled = true;
            }

            return(View(model));
        }
Ejemplo n.º 5
0
 public CreateViewModel()
 {
     CreateIdViewModel    = new CreateIdViewModel();
     CreateAuditViewModel = new CreateAuditViewModel();
 }