public object VerifyPerson(VerifyModel model)
        {
            if (!ModelState.IsValid)
            {
                return(operateContext.RedirectWebApi(WebResultCode.Exception, GlobalConstant.参数异常.ToString(), null));
            }
            Bane_User user = operateContext.bllSession.Bane_User.Select(s => s.user_identify == model.user_identify).FirstOrDefault();

            if (null == user)
            {
                return(operateContext.RedirectWebApi(WebResultCode.Error, "系统不存在此身份证的用户,请核对后再试!", null));
            }
            //1.验证成功自动生成尿检记录
            operateContext.bllSession.Bane_UrinalysisRecord.AutoAddUrinalysisRecordUser(model.user_identify);
            //2.更新下次尿检时间
            Bane_UrinalysisTimeSet set = operateContext.bllSession.Bane_UrinalysisTimeSet.Select(s => s.user_type.Equals(user.user_type), o => o.gap_month, true).FirstOrDefault();
            int addMonth = 1;

            if (set != null)
            {
                addMonth = set.gap_month;
            }
            user.ur_next_date = DateTime.Now.AddMonths(addMonth);
            operateContext.bllSession.Bane_User.Modify(user, s => s.user_identify == model.user_identify, "ur_next_date");
            return(operateContext.RedirectWebApi(WebResultCode.Ok, "验证成功流程任务已启动", null));
        }
Exemple #2
0
        public object VerifyPerson(VerifyModel model)
        {
            if (!ModelState.IsValid)
            {
                return(operateContext.RedirectWebApi(WebResultCode.Exception, GlobalConstant.参数异常.ToString(), null));
            }
            Bane_User user = operateContext.bllSession.Bane_User.Select(s => s.user_identify == model.user_identify).FirstOrDefault();

            if (null == user)
            {
                return(operateContext.RedirectWebApi(WebResultCode.Error, "系统不存在此身份证的用户,请核对后再试!", null));
            }
            //1:验证当前人员是否到达检测时间:检测时间为:下一次时间的前7天内
            int days = (user.ur_next_date - DateTime.Now).Days;//下一次检测时间,当前时间(时间差天数)

            //1.1 判断是否达到检测日期
            if (days > 7)
            {
                return(operateContext.RedirectWebApi(WebResultCode.Error, "当前人员还未到达检测日期,请:" + (days - 7).ToString() + "天后再检测!", null));
            }
            //2:验证成功自动生成尿检记录
            operateContext.bllSession.Bane_UrinalysisRecord.AutoAddUrinalysisRecordUser(model.user_identify);
            //3:更新下次尿检时间
            Bane_UrinalysisTimeSet set = operateContext.bllSession.Bane_UrinalysisTimeSet.Select(s => s.user_type.Equals(user.user_type), o => o.gap_month, true).FirstOrDefault();
            int addMonth = 1,//间隔检测月数
                gapMonth;

            if (set != null)
            {
                addMonth = set.gap_month;
            }
            gapMonth = (addMonth - 1) * 30 + 24;
            if (days < gapMonth)
            {
                user.ur_next_date = user.ur_next_date.AddMonths(addMonth);
            }
            else if (days == gapMonth)
            {
                user.ur_next_date = user.ur_next_date.AddMonths(addMonth * 2);
            }
            else if (days > gapMonth)
            {
                int tempMonth = (days / gapMonth) * addMonth + (days % gapMonth) > 0 ? addMonth : 0;
                user.ur_next_date = user.ur_next_date.AddMonths(tempMonth);
            }
            operateContext.bllSession.Bane_User.Modify(user, s => s.user_identify == model.user_identify, "ur_next_date");
            return(operateContext.RedirectWebApi(WebResultCode.Ok, "验证成功流程任务已启动", null));
        }