public async Task <IActionResult> GetConsumersPageList([FromQuery]
                                                               GetConsumerListRequestDto request)
        {
            var consumerBiz = new ConsumerBiz();

            return(Success(await consumerBiz.GetConsumersPageList(request)));
        }
예제 #2
0
        public async Task <IActionResult> SaveIndicatorWarningLimit([FromBody] CreateIndicatorWarningLimitRequestDto request)
        {
            if (request.Limits.Count <= 0)
            {
                return(Failed(ErrorCode.Empty, "指标项参数未提供,请检查"));
            }

            if (request.Limits.Any(d => string.IsNullOrEmpty(d.OptionGuid)))
            {
                return(Failed(ErrorCode.Empty, "存在指标项为空的参数,请检查"));
            }

            var duplicateOptionExists = request.Limits
                                        .GroupBy(d => d.OptionGuid.Trim())
                                        .Any(g => g.Count() > 1);

            if (duplicateOptionExists)
            {
                return(Failed(ErrorCode.Empty, "存在重复指标项的参数,请检查"));
            }
            if (request.Limits.Any(d => !d.MinValue.HasValue || !d.MaxValue.HasValue))
            {
                return(Failed(ErrorCode.Empty, "存在预警范围为空的参数,请检查"));
            }
            else
            {
                if (request.Limits.Any(d => d.MaxValue.Value < d.MinValue.Value))
                {
                    return(Failed(ErrorCode.Empty, "存在预警低值大于预警高值的参数,请检查"));
                }
            }
            var consumerBiz = new ConsumerBiz();
            var consumer    = await consumerBiz.GetModelAsync(request.ConsumerGuid);

            if (consumer is null || !consumer.Enable)
            {
                return(Failed(ErrorCode.Empty, "指定会员不存在"));
            }

            var warningLimiBiz = new IndicatorWarningLimitBiz();
            var dbLimits       = await warningLimiBiz.GetLimits(request.ConsumerGuid);

            var createModels = new List <IndicatorWarningLimitModel>();
            var updateModels = new List <IndicatorWarningLimitModel>();

            if (dbLimits is null || dbLimits.Count <= 0)
            {
                createModels = request.Limits.Select(d => new IndicatorWarningLimitModel()
                {
                    LimitGuid           = Guid.NewGuid().ToString(),
                    UserGuid            = request.ConsumerGuid,
                    TurnOnWarning       = request.TurnOnWarning,
                    IndicatorOptionGuid = d.OptionGuid,
                    MinValue            = d.MinValue,
                    MaxValue            = d.MaxValue,
                    CreatedBy           = UserID,
                    LastUpdatedBy       = UserID,
                    OrgGuid             = ""
                }).ToList();
            }
        public IActionResult RegisterSendIntergral(string Phone, UserType userType = UserType.Consumer)
        {
            //注册送积分 判断注册日期是否大于一天
            var userModel = new ConsumerBiz().GetModelByPhone(Phone).Result;

            if (userModel == null)
            {
                return(Success());
                //return Failed(ErrorCode.DataBaseError, "找不到该用户信息,请检查!");
            }
            var scoreModel = new ScoreExBiz().GetIntergralRecordByCondition(UserID, SendIntergralEnum.注冊送积分.ToString()).Result;

            if (scoreModel != null)
            {
                return(Success());
                //return Failed(ErrorCode.DataBaseError, "注册已送积分,该次无法赠送积分!");
            }
            TimeSpan interval          = DateTime.Now - userModel.CreationDate;
            var      isRegisteRightNow = interval.TotalHours < 24;

            if (!isRegisteRightNow)
            {
                return(Success());
                //return Failed(ErrorCode.UserData, "用户注册时间过久,注册送积分失败,请联系管理员!");
            }
            if (!InsertIntergral(150, SendIntergralEnum.注冊送积分, userType))
            {
                Common.Helper.Logger.Error($"注册送积分失败-RegisterSendIntergral({Phone})");
            }
            return(Success());
            //var isSucc = InsertIntergral(150, SendIntergralEnum.注冊送积分, userType);
            //return isSucc ? Success() : Failed(ErrorCode.DataBaseError, "注册送积分失败!");
        }
예제 #4
0
        public async Task <IActionResult> GetAskedDoctorHotArticle()
        {
            var articleBiz = new ConsumerBiz();
            var response   = await articleBiz.GetAskedDoctorHotArticlesAsync(3.0M, 3.0M);

            if (response == null)
            {
                return(Failed(ErrorCode.Empty, "未查询到数据"));
            }
            return(Success(response));
        }
예제 #5
0
        public IActionResult GetAskedDoctorLectureHallArticle([FromBody] GetAskedDoctorLectureHallArticleRequestDto requestDto)
        {
            var articleBiz   = new ConsumerBiz();
            var responseDtos = articleBiz.GetAskedDoctorLectureHallArticle(requestDto);

            if (responseDtos == null)
            {
                return(Failed(ErrorCode.Empty));
            }

            return(Success(responseDtos));
        }
        public async Task <IActionResult> CreateConsumerHealthInfo([FromBody] CreateConsumerRequestDto request)
        {
            if (request.Informations.Count <= 0)
            {
                return(Failed(ErrorCode.Empty, "基础信息未提交"));
            }

            if (request.Informations.Any(d => string.IsNullOrEmpty(d.InformationGuid)))
            {
                return(Failed(ErrorCode.Empty, "基础信息未提交"));
            }

            var userBiz = new UserBiz();

            var user = await userBiz.GetByPnoneAsync(request.Phone);

            if (user != null)
            {
                return(Failed(ErrorCode.Empty, $"该手机号【{request.Phone}】已注册,请直接在会员列表搜索"));
            }

            var userGuid = Guid.NewGuid().ToString("N");

            var pwd = request.Phone.Substring(request.Phone.Length - 6);

            var userModel = new UserModel()
            {
                Phone          = request.Phone,
                UserGuid       = userGuid,
                UserName       = string.IsNullOrWhiteSpace(request.UserName) ? userGuid.Substring(0, 6) : request.UserName,//userGuid.Substring(0, 6),
                Password       = CryptoHelper.AddSalt(userGuid, CryptoHelper.Md5(pwd)),
                NickName       = userGuid.Substring(0, 6),
                Gender         = string.IsNullOrWhiteSpace(request.Gender) ? "M" : request.Gender,
                Birthday       = request.Birthday,
                IdentityNumber = request.IdentityNumber,
                CreatedBy      = UserID,
                LastUpdatedBy  = UserID,
                OrgGuid        = ""
            };

            var consumerModel = new ConsumerModel()
            {
                ConsumerGuid  = userGuid,
                CreatedBy     = UserID,
                LastUpdatedBy = UserID,
                OrgGuid       = ""
            };

            var infos = request.Informations.Select(d => new ConsumerHealthInfoModel()
            {
                InfoRecordGuid  = Guid.NewGuid().ToString("N"),
                UserGuid        = userGuid,
                InformationGuid = d.InformationGuid,
                InformationType = d.InformationType?.ToString(),
                OptionGuids     = JsonConvert.SerializeObject(d.OptionGuids),
                ResultValue     = d.ResultValue,
                CreatedBy       = UserID,
                LastUpdatedBy   = UserID,
                OrgGuid         = ""
            }).ToList();

            var consumerBiz = new ConsumerBiz();

            var result = await consumerBiz.CreateConsumerHealthInfo(userModel, consumerModel, infos);

            if (!result)
            {
                return(Failed(ErrorCode.Empty, "注册失败,请稍后重试"));
            }

            return(Success());
        }