示例#1
0
        public async Task <ActionResult <BaseResponse> > Update([FromBody] DataDefineLibraryUpdateDto req)
        {
            //超级管理员有权限
            var    GroupId = User.Claims.FirstOrDefault(a => a.Type == "GroupId").Value;
            var    isAdmin = User.Claims.FirstOrDefault(a => a.Type == "IsAdmin").Value.ToLower() == "true" ? true : false;
            string Code    = User.Claims.FirstOrDefault(a => a.Type == "Code").Value;
            string Account = User.Claims.FirstOrDefault(a => a.Type == "Account").Value;

            if (!(isAdmin && Code == _config["Group"]))
            {
                return(Unauthorized("用户没有权限修改数据定义库"));
            }
            var rm = await _dls.UpdateDataDefineAsync(req, Account);

            return(rm);
        }
示例#2
0
        public async Task <BaseResponse> UpdateDataDefineAsync(DataDefineLibraryUpdateDto req, string account)
        {
            var data = await _dlr.FindAsync(req.Id);

            if (data == null)
            {
                return(new BaseResponse {
                    Success = false, Message = "输入的编号不存在"
                });
            }
            //验证是否重名
            var ret = await _dlr.Find(a => a.DataName == req.DataName && a.Id != req.Id).FirstOrDefaultAsync();

            if (ret != null)
            {
                return(new BaseResponse {
                    Success = false, Message = "已存在相同名称的数据定义"
                });
            }
            var entity = _mapper.Map(req, data);

            try
            {
                entity.Modify     = account;
                entity.ModifyTime = DateTime.Now;
                await _dlr.SaveAsync(data);

                _log.LogInformation($"{account}修改Id为{req.Id}数据定义库成功");
                return(new BaseResponse {
                    Success = true, Message = "修改数据成功"
                });
            }
            catch (Exception ex)
            {
                _log.LogError($"{account}修改Id为{req.Id}的数据定义库失败,失败原因{ex.Message}->{ex.StackTrace}->{ex.InnerException}");
                return(new BaseResponse {
                    Success = false, Message = "修改数据失败,请联系管理员"
                });
            }
        }