/// <summary>
        /// 添加
        /// </summary>
        /// <param name="requestDto"></param>
        /// <returns></returns>
        public async Task <AchievementMonthGoalModel> GetAchievementMonthGoalModel(CreateMonthAchievementDto requestDto, string userId)
        {
            using (var conn = MySqlHelper.GetConnection())
            {
                var sql = $@"SELECT * FROM t_achievement_month_goal where `year`=@year and `month`=@month and hospital_guid=@userId ";
                var achievementMonthGoalModel = await conn.QueryFirstOrDefaultAsync <AchievementMonthGoalModel>(sql, new { year = requestDto.Date.Year, month = requestDto.Date.Month, userId = userId });

                return(achievementMonthGoalModel);
            }
        }
Exemplo n.º 2
0
        public async Task <IActionResult> CreateAchievementDay([FromBody] CreateDayAchievementDto requestDto)
        {
            if (requestDto.Date.Date > DateTime.Now.Date)
            {
                return(Failed(Common.ErrorCode.UserData, "只能上传今日及过去的数据"));
            }
            if (requestDto.DayGoal <= 0)
            {
                return(Failed(Common.ErrorCode.UserData, "目标值必须大于0"));
            }
            CreateMonthAchievementDto request = new CreateMonthAchievementDto {
                Date = requestDto.Date
            };
            //校验月份是否存在
            var achievementMonthModel = new AchievementMonthBiz().GetAchievementMonthGoalModel(request, UserID).Result;

            if (achievementMonthModel == null)
            {
                return(Failed(Common.ErrorCode.UserData, "此月份的业绩目标不存在"));
            }
            //校验当天业绩数据是否上传过
            var achievementModel = await new AchievementBiz().GetAchievementModel(requestDto.Date, achievementMonthModel.GoalGuid);

            if (achievementModel != null)
            {
                return(Failed(Common.ErrorCode.UserData, "当天的业绩目标已存在"));
            }
            var model = new AchievementModel();

            model.AchievementGuid = Guid.NewGuid().ToString("N");
            model.GoalGuid        = achievementMonthModel.GoalGuid;
            model.AchievementDate = requestDto.Date;
            model.TodayGoal       = requestDto.DayGoal;
            model.TodayComplete   = requestDto.DayCompleteGoal;
            model.CreationDate    = DateTime.Now;
            model.LastUpdatedDate = DateTime.Now;
            model.LastUpdatedBy   = UserID;
            model.CreatedBy       = UserID;
            model.OrgGuid         = string.Empty;
            var result = await new AchievementBiz().InsertAsync(model);

            if (result)
            {
                MQNotice();
            }
            return(result ? Success() : Failed(ErrorCode.DataBaseError, "添加日业绩目标失败"));
        }
Exemplo n.º 3
0
        public async Task <IActionResult> CreateAchievementMonth([FromBody] CreateMonthAchievementDto requestDto)
        {
            DateTime dtR = new DateTime(requestDto.Date.Year, requestDto.Date.Month, 1);
            DateTime dtN = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1);
            DateTime dtS = dtN.AddMonths(-4);

            if (dtR < dtS || dtR > dtN)
            {
                return(Failed(Common.ErrorCode.UserData, "月份只可选当月及前4个月"));
            }
            if (requestDto.MonthGoal <= 0)
            {
                return(Failed(Common.ErrorCode.UserData, "目标值必须大于0"));
            }
            //校验月份是否存在
            var achievementModel = new AchievementMonthBiz().GetAchievementMonthGoalModel(requestDto, UserID).Result;

            if (achievementModel != null)
            {
                return(Failed(Common.ErrorCode.UserData, "此时间的目标已存在"));
            }
            var model = new AchievementMonthGoalModel();

            model.GoalGuid        = Guid.NewGuid().ToString("N");
            model.HospitalGuid    = UserID;
            model.Year            = requestDto.Date.Year;
            model.Month           = requestDto.Date.Month;
            model.MonthGoal       = requestDto.MonthGoal;
            model.CreationDate    = DateTime.Now;
            model.LastUpdatedDate = DateTime.Now;
            model.CreatedBy       = UserID;
            model.LastUpdatedBy   = UserID;
            model.OrgGuid         = string.Empty;
            var result = await new AchievementMonthBiz().InsertAsync(model);

            if (result)
            {
                MQNotice();
            }
            return(result ? Success() : Failed(ErrorCode.DataBaseError, "添加月目标失败"));
        }