예제 #1
0
        public async Task <IResultModel> Add(UserLatestSelectAddModel model)
        {
            var entity = _mapper.Map <UserLatestSelectEntity>(model);
            var result = await _repository.InsertAsync(entity);

            return(ResultModel.Result(result));
        }
예제 #2
0
        public async Task <IResultModel> SaveLatestSelect(List <string> ids)
        {
            if (ids == null || !ids.Any())
            {
                return(ResultModel.Failed("未选择用户"));
            }

            try
            {
                _dbContext.Db.BeginTran();

                foreach (var relationId in ids)
                {
                    var entity = await _userLatestSelectRepository.FirstAsync(m => m.UserId == _loginInfo.UserId && m.RelationId == relationId && m.IsDel == false, _dbContext.Db);

                    if (entity == null)
                    {
                        entity = new UserLatestSelectEntity
                        {
                            UserId     = _loginInfo.UserId,
                            RelationId = relationId,
                            Timestamp  = DateTime.Now.ToTimestamp()
                        };

                        await _userLatestSelectRepository.InsertAsync(entity, _dbContext.Db);
                    }
                    else
                    {
                        entity.Timestamp = DateTime.Now.ToTimestamp();
                        await _userLatestSelectRepository.UpdateAsync(entity, _dbContext.Db);
                    }
                }

                _dbContext.Db.CommitTran();
            }
            catch (Exception ex)
            {
                _dbContext.Db.RollbackTran();
                return(ResultModel.Failed(ex.Message));
            }

            return(ResultModel.Success());
        }