/// <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)); }
/// <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); }
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)); }
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)); }
/// <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") + "前到相应社工站做定期检测,请准时参加。" }); }
/// <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); }
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)); }
/// <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); }
/// <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); }