Ejemplo n.º 1
0
        /// <summary>
        ///  64位图片格式存储并返回存储地址
        /// </summary>
        /// <returns></returns>
        public string GetPhotoUrl(string photo64, string user_identify, string orgId)
        {
            if (string.IsNullOrEmpty(photo64))
            {
                return("");
            }
            //判断文件夹是否存在
            string folderUrl = HttpContext.Current.Server.MapPath(string.Format("~/UpFile/BaneImg/{0}", orgId));

            if (!Directory.Exists(folderUrl))
            {
                Directory.CreateDirectory(folderUrl);//文件夹不存在则创建
            }
            string path    = string.Format("~/UpFile/BaneImg/{0}/{1}.jpg", orgId, user_identify),
                   pathUrl = HttpContext.Current.Server.MapPath(path);
            Bane_User user = DBSession.IBane_UserDAL.Select(s => s.user_identify == user_identify).FirstOrDefault();

            if (user != null && !string.IsNullOrEmpty(user.user_photo))
            {
                File.Delete(HttpContext.Current.Server.MapPath(user.user_photo));
            }
            //将64位编码转换为字节数组
            byte[] img = Convert.FromBase64String(photo64);
            //用filestream创造一个文件
            MemoryStream ms  = new MemoryStream(img);
            Bitmap       bmp = new Bitmap(ms);

            bmp.Save(pathUrl, System.Drawing.Imaging.ImageFormat.Jpeg);
            ms.Close();
            return(path);
        }
        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));
        }
Ejemplo n.º 3
0
        /// <summary>
        ///  根据用户身份证获取 定期检测提醒记录数量
        /// </summary>
        /// <param name="user_identify"></param>
        /// <returns></returns>
        public int GetDetectionNumByID(string user_guid)
        {
            Bane_User user = Select(s => s.user_guid == user_guid).FirstOrDefault();
            //提前3天 提醒
            DateTime dtNext = user.ur_next_date.AddDays(-9);//减去6天,回到正常下次检测日期,-3表示提前3天

            if (DateTime.Now >= dtNext)
            {
                return(1);
            }
            return(0);
        }
Ejemplo n.º 4
0
        public ActionResult UploadFile()
        {
            Result result = new Result();

            result.avatarUrls = new List <string>();
            result.success    = false;
            result.msg        = "Failure!";
            //身份证作为文件名。
            string    fileName = RequestHelper.GetStrByName("user_identify");
            Bane_User user     = operateContext.bllSession.Bane_User.Select(s => s.user_identify == fileName).FirstOrDefault();
            int       orgId    = user.org_id;

            #region 处理上传文件夹

            string path = Server.MapPath("~/UpFile/BaneImg/" + orgId.ToString());
            if (!Directory.Exists(path.ToString()))
            {
                Directory.CreateDirectory(path.ToString());//文件夹不存在则创建
            }
            #endregion

            #region 处理头像图片
            HttpPostedFileBase file    = Request.Files["__source"];//__avatar1
            string[]           avatars = new string[3] {
                "__avatar1", "__avatar2", "__avatar3"
            };
            int avatars_length = avatars.Length;
            for (int i = 0; i < avatars_length; i++)
            {
                file = Request.Files[avatars[i]];
                if (file == null)
                {
                    break;
                }
                //判断原来是否有上传过文件,有则删除
                if (user != null && !string.IsNullOrEmpty(user.user_photo))
                {
                    System.IO.File.Delete(Server.MapPath(user.user_photo));
                }
                string virtualPath = string.Format("~/UpFile/BaneImg/{0}/{1}.jpg", orgId.ToString(), fileName);
                result.avatarUrls.Add(virtualPath);
                file.SaveAs(Server.MapPath(virtualPath));
                user.user_photo = result.avatarUrls[0];
                operateContext.bllSession.Bane_User.Modify(user, s => s.user_identify == fileName, "user_photo");
            }

            #endregion
            result.success = true;
            result.msg     = "Success!";
            //返回图片的保存结果(返回内容为json字符串,可自行构造,该处使用Newtonsoft.Json构造)
            return(Json(result));
        }
Ejemplo n.º 5
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));
        }
        public object BaneLogin(BaneLoginModel bane)
        {
            if (!ModelState.IsValid)
            {
                return(OperateContext.Current.RedirectWebApi(WebResultCode.Exception, "参数验证失败", null));
            }
            string    pwd  = HCQ2_Common.Encrypt.EncryptHelper.Md5Encryption(bane.user_pwd);
            Bane_User user = operateContext.bllSession.Bane_User.Select(s => s.user_identify == bane.user_identify && s.user_pwd == pwd).FirstOrDefault();
            string    guid = user?.user_guid;

            if (!string.IsNullOrEmpty(guid))
            {
                return(OperateContext.Current.RedirectWebApi(WebResultCode.Ok, "登录成功", guid));
            }
            return(OperateContext.Current.RedirectWebApi(WebResultCode.Error, "身份证或密码错误,请核对信息", null));
        }
Ejemplo n.º 7
0
        /// <summary>
        ///  根据用户身份证获取是否需要提醒 定期检测
        /// </summary>
        /// <param name="user_identify"></param>
        /// <returns></returns>
        public BaneMyMessageModel GetDetectionContentByID(string user_guid)
        {
            if (GetDetectionNumByID(user_guid) <= 0)
            {
                return(null);
            }
            Bane_User user = Select(s => s.user_guid == user_guid).FirstOrDefault();

            return(new BaneMyMessageModel
            {
                mess_title = "定期检测提醒",
                send_name = "系统管理员",
                send_date = DateTime.Now.ToString("yyyy-MM-dd"),
                mess_content = "您应于" + user.ur_next_date.AddDays(-6).ToString("D") + "前到相应社工站做定期检测,请准时参加。"
            });
        }
Ejemplo n.º 8
0
        /// <summary>
        ///  禁毒人员注册
        /// </summary>
        /// <param name="bane"></param>
        /// <returns></returns>
        public BaneRegisterType BaneRegister(BaneRegModel bane)
        {
            Bane_User user = Select(s => s.user_identify == bane.user_identify).FirstOrDefault();

            if (user == null)
            {
                return(BaneRegisterType.EXCEPTION);
            }
            string user_pwd = user.user_pwd;

            if (!string.IsNullOrEmpty(user_pwd))
            {
                return(BaneRegisterType.FINASH);//返回2表示已注册
            }
            int mark = DBSession.IBane_UserDAL.RegBaneUser(user.user_id, HCQ2_Common.Encrypt.EncryptHelper.Md5Encryption(bane.user_pwd), bane.user_phone);

            return(mark > 0 ? BaneRegisterType.OK : BaneRegisterType.ERROR);
        }
Ejemplo n.º 9
0
        public object GetMyMessageNum(BaseBaneModel bane)
        {
            if (!ModelState.IsValid)
            {
                return(OperateContext.Current.RedirectWebApi(
                           WebResultCode.Exception, "参数验证失败", null));
            }
            //返回数据
            Bane_User user = operateContext.bllSession.Bane_User.Select(s => s.user_guid == bane.userid).FirstOrDefault();
            //1. 在线答题,只有管控人员才需要提醒答题
            int baneResult = 0;

            //属于管控期的人员才统计
            if (user.control_date != null && user.control_date >= DateTime.Now)
            {
                baneResult = operateContext.bllSession.Bane_HistoryScore.GetAnswerNumByID(user.user_identify);
            }
            //2. 定期检测 统计数量 -6天
            baneResult += operateContext.bllSession.Bane_User.GetDetectionNumByID(bane.userid);
            return(OperateContext.Current.RedirectWebApi(WebResultCode.Ok, "数据获取成功", baneResult));
        }
        public object BaneDataByID(BaseBaneModel bane)
        {
            if (!ModelState.IsValid)
            {
                return(OperateContext.Current.RedirectWebApi(WebResultCode.Exception, "参数验证失败", null));
            }
            //人员注册对象
            Bane_User user = operateContext.bllSession.Bane_User.Select(s => s.user_guid == bane.userid).FirstOrDefault();

            if (user == null)
            {
                return(OperateContext.Current.RedirectWebApi(WebResultCode.Exception, "查无此人,请核对信息是否有误~", ""));
            }
            BaneRegModel userModel = new BaneRegModel
            {
                user_identify = user.user_identify,
                user_phone    = user.user_mobile,
                user_pwd      = ""
            };

            return(OperateContext.Current.RedirectWebApi(WebResultCode.Ok, "成功获取数据", userModel));
        }
Ejemplo n.º 11
0
        /// <summary>
        ///  添加戒毒人员
        /// </summary>
        /// <param name="user"></param>
        /// <param name="model"></param>
        /// <returns></returns>
        public bool AddUser(BaneAddModel user, BaneRecoveryModel model)
        {
            //报到时间
            DateTime next_date = DateTime.ParseExact(model.start_date, "yyyy-MM-dd", new System.Globalization.CultureInfo("zh-CN"));
            int      addMonth  = 1;//默认一个月周期
            //检查时间
            List <Bane_UrinalysisTimeSet> set = DBSession.IBane_UrinalysisTimeSetDAL.Select(s => s.user_type.Equals(user.user_type), o => o.gap_month, true);

            if (set != null)
            {
                addMonth = set[0].gap_month;
            }
            DateTime  user_next_date = next_date.AddMonths(addMonth);
            Bane_User baneUser       = new Bane_User
            {
                user_name      = user.user_name,
                alias_name     = user.alias_name,
                user_sex       = user.user_sex,
                user_birth     = DateTime.ParseExact(user.user_birth, "yyyy-MM-dd", new System.Globalization.CultureInfo("zh-CN")),
                user_height    = user.user_height,
                user_identify  = user.user_identify,
                user_edu       = user.user_edu,
                job_status     = user.job_status,
                bane_type      = user.bane_type,
                birth_url      = user.birth_url,
                family_phone   = user.family_phone,
                live_url       = user.live_url,
                move_phone     = user.move_phone,
                attn_name      = user.attn_name,
                attn_url       = user.attn_url,
                attn_relation  = user.attn_relation,
                attn_phone     = user.attn_phone,
                marital_status = user.marital_status,
                is_live_parent = user.is_live_parent,
                user_status    = user.user_status,
                is_pro_train   = user.is_pro_train,
                user_skill     = user.user_skill,
                user_type      = user.user_type,
                user_phone     = user.user_phone,
                ur_next_date   = user_next_date,
                user_photo     = GetPhotoUrl(user.user_photo, user.user_identify, user.org_id.ToString()),
                user_note      = user.user_note,
                org_id         = user.org_id,
                is_send        = false,//是否下发
                user_resume    = user.user_resume,
                iris_data1     = ss1(user.iris_data2),
                iris_data2     = ss2(user.iris_data2),
                update_date    = DateTime.Now
            };
            Bane_RecoveryInfo reInfo = new Bane_RecoveryInfo
            {
                user_identify      = model.user_identify,
                exec_area          = model.exec_area,
                exec_unit          = model.exec_unit,
                order_unit         = model.order_unit,
                is_aids            = model.is_aids,
                isolation_url      = model.isolation_url,
                isolation_out_date = (!string.IsNullOrEmpty(model.isolation_out_date)) ? DateTime.ParseExact(model.isolation_out_date, "yyyy-MM-dd", new System.Globalization.CultureInfo("zh-CN")) : (DateTime?)null,
                cure_ups           = model.cure_ups,
                in_recovery        = model.in_recovery,
                start_date         = next_date,
                end_date           = (!string.IsNullOrEmpty(model.end_date)) ? DateTime.ParseExact(model.end_date, "yyyy-MM-dd", new System.Globalization.CultureInfo("zh-CN")) : (DateTime?)null,
                end_reason         = model.end_reason
            };
            int mark = DBSession.IBane_UserDAL.Add(baneUser);

            DBSession.IBane_RecoveryInfoDAL.Add(reInfo);
            return(mark > 0 ? true : false);
        }
Ejemplo n.º 12
0
        /// <summary>
        ///  编辑戒毒人员
        /// </summary>
        /// <param name="user"></param>
        /// <param name="model"></param>
        /// <returns></returns>
        public bool EditUser(BaneAddModel user, BaneRecoveryModel model)
        {
            List <Bane_UrinalysisRecord> list = DBSession.IBane_UrinalysisRecordDAL.Select(s => s.user_identify.Equals(user.user_identify));
            //报到时间
            DateTime next_date = DateTime.ParseExact(model.start_date, "yyyy-MM-dd", new System.Globalization.CultureInfo("zh-CN"));
            //下次尿检时间
            string    updateItem = "";
            Bane_User baneUser   = new Bane_User();

            if (list == null || list.Count <= 0)
            {
                int addMonth = 1;//默认一个月周期
                //检查时间
                List <Bane_UrinalysisTimeSet> set = DBSession.IBane_UrinalysisTimeSetDAL.Select(s => s.user_type.Equals(user.user_type), o => o.gap_month, true);
                if (set != null)
                {
                    addMonth = set[0].gap_month;
                }
                //下次尿检时间
                baneUser.ur_next_date = next_date.AddMonths(addMonth);
                updateItem            = ",ur_next_date";
            }
            baneUser.user_name      = user.user_name;
            baneUser.alias_name     = user.alias_name;
            baneUser.user_sex       = user.user_sex;
            baneUser.user_birth     = DateTime.ParseExact(user.user_birth, "yyyy-MM-dd", new System.Globalization.CultureInfo("zh-CN"));
            baneUser.user_height    = user.user_height;
            baneUser.user_identify  = user.user_identify;
            baneUser.user_edu       = user.user_edu;
            baneUser.job_status     = user.job_status;
            baneUser.bane_type      = user.bane_type;
            baneUser.birth_url      = user.birth_url;
            baneUser.family_phone   = user.family_phone;
            baneUser.live_url       = user.live_url;
            baneUser.move_phone     = user.move_phone;
            baneUser.attn_name      = user.attn_name;
            baneUser.attn_url       = user.attn_url;
            baneUser.attn_relation  = user.attn_relation;
            baneUser.attn_phone     = user.attn_phone;
            baneUser.marital_status = user.marital_status;
            baneUser.is_live_parent = user.is_live_parent;
            baneUser.user_status    = user.user_status;
            baneUser.is_pro_train   = user.is_pro_train;
            baneUser.user_skill     = user.user_skill;
            baneUser.user_type      = user.user_type;
            baneUser.user_phone     = user.user_phone;
            baneUser.user_photo     = GetPhotoUrl(user.user_photo, user.user_identify, user.org_id.ToString());
            baneUser.user_note      = user.user_note;
            baneUser.org_id         = user.org_id;
            baneUser.is_send        = false;//是否下发
            baneUser.user_resume    = user.user_resume;
            baneUser.iris_data1     = ss1(user.iris_data2);
            baneUser.iris_data2     = ss2(user.iris_data2);
            baneUser.update_date    = DateTime.Now;
            Bane_RecoveryInfo reInfo = new Bane_RecoveryInfo
            {
                user_identify      = model.user_identify,
                exec_area          = model.exec_area,
                exec_unit          = model.exec_unit,
                order_unit         = model.order_unit,
                is_aids            = model.is_aids,
                isolation_url      = model.isolation_url,
                isolation_out_date = (!string.IsNullOrEmpty(model.isolation_out_date)) ? DateTime.ParseExact(model.isolation_out_date, "yyyy-MM-dd", new System.Globalization.CultureInfo("zh-CN")) : (DateTime?)null,
                cure_ups           = model.cure_ups,
                in_recovery        = model.in_recovery,
                start_date         = next_date,
                end_date           = (!string.IsNullOrEmpty(model.end_date)) ? DateTime.ParseExact(model.end_date, "yyyy-MM-dd", new System.Globalization.CultureInfo("zh-CN")) : (DateTime?)null,
                end_reason         = model.end_reason
            };

            string[]      param = { "user_name", "alias_name", "user_sex", "user_birth", "user_height", "user_identify", "user_edu", "job_status", "bane_type", "birth_url", "family_phone", "live_url", "move_phone", "attn_name", "attn_url", "attn_relation", "attn_phone", "marital_status", "is_live_parent", "user_status", " is_pro_train", "user_skill", "user_type", "user_phone", "user_note", "is_send", "user_resume", "iris_data1", "iris_data2", "update_date" };
            List <string> _list = param.ToList();

            if (!string.IsNullOrEmpty(updateItem))
            {
                _list.Add("ur_next_date");
            }
            if (!string.IsNullOrEmpty(user.user_photo))
            {
                _list.Add("user_photo");
            }
            DBSession.IBane_UserDAL.Modify(baneUser, s => s.user_id == user.user_id, _list.ToArray());
            DBSession.IBane_RecoveryInfoDAL.Modify(reInfo, s => s.ri_id == model.ri_id, "user_identify", "exec_area", "exec_unit", "order_unit", "is_aids", "isolation_url", "isolation_out_date", "cure_ups", "in_recovery", "start_date", "end_date", "end_reason");
            return(true);
        }