Exemple #1
0
        public async Task <IActionResult> EditReference(RefViewMode model)
        {
            if (ModelState.IsValid)
            {
                Reference reference;
                if (model.ID > 0)
                {
                    reference = await _sysAdminSvc.GetReference(model.ID);
                }
                else
                {
                    reference = new Reference
                    {
                        CreatedBy = UserHelper.GetUserID(HttpContext),
                        CreatedOn = DateTime.Now,
                    };
                }
                reference.ActiveStatus   = model.ActiveStatus;
                reference.ReferenceCode  = model.Code;
                reference.Type           = RefViewMode.Parse(model.Type);
                reference.ReferenceValue = model.Name;
                try
                {
                    await _sysAdminSvc.SaveReference(reference);

                    return(RedirectToAction(nameof(References), new { t = reference.Type }));
                }
                catch (Exception ex)
                {
                    ModelState.AddModelError("", "保存参照项失败:" + ex.Message);
                }
            }
            return(View(model));
        }
Exemple #2
0
        public IActionResult EditReference(ReferenceTypeEnum t)
        {
            if (t == ReferenceTypeEnum.Duty)
            {
                return(RedirectToAction(nameof(EditDuty)));
            }

            RefViewMode model = new RefViewMode
            {
                ActiveStatus = true,
                Type         = RefViewMode.Translate(t)
            };

            return(View(model));
        }
Exemple #3
0
        public async Task <IActionResult> EditReference(int id)
        {
            var reference = await _sysAdminSvc.GetReference(id);

            if (reference.Type == ReferenceTypeEnum.Duty)
            {
                return(RedirectToAction(nameof(EditDuty), new { id = id }));
            }

            RefViewMode model = await _sysAdminSvc.GetReference(id);

            if (model == null || model.ID <= 0)
            {
                ModelState.AddModelError("", "没有定位到要显示的参照项");
            }

            return(View(model));
        }
Exemple #4
0
        public async Task <IActionResult> DeleteReference(RefViewMode model)
        {
            if (ModelState.IsValid)
            {
                if (model.ActiveStatus == true)
                {
                    ModelState.AddModelError("", $"不能删除正在使用中的{model.Type}, 请首先停用它");
                }
                else
                {
                    try
                    {
                        await _sysAdminSvc.DeleteReference(model.ID);

                        return(RedirectToAction(nameof(References), new { t = RefViewMode.Parse(model.Type) }));
                    }
                    catch (Exception ex)
                    {
                        ModelState.AddModelError("", "删除参照项失败:" + ex.Message);
                    }
                }
            }
            return(View(nameof(EditReference), model));
        }