//根据条件查询 public List <MydutyClaim_Sign> GetByParas(SearchByIDAnduidModel model) { //查询条件 var predicate = WhereExtension.True <MydutyClaim_Sign>();//初始化where表达式 if (!String.IsNullOrEmpty(model.uid)) { predicate = predicate.And(p => p.Userid.Equals(model.uid)); } if (!String.IsNullOrEmpty(model.MydutyClaim_InfoID)) { predicate = predicate.And(p => p.MydutyClaim_InfoID.Equals(model.MydutyClaim_InfoID)); } var result = DbSet.Where(predicate).OrderByDescending(o => o.CreateDate).ToList(); return(result); }
public ActionResult <MydutyClaim_InfoResModel> GetMydutyDetail(SearchByIDAnduidModel viewModel) { MydutyClaim_InfoResModel SearchResModel = new MydutyClaim_InfoResModel(); if (!string.IsNullOrEmpty(viewModel.uid) && !string.IsNullOrEmpty(viewModel.MydutyClaim_InfoID)) { SearchResModel = mydutyClaimInfoService.GetMydutyDetail(viewModel); } else { SearchResModel.claim_SignInfo = null; SearchResModel.MiddleModel = null; SearchResModel.isSuccess = false; SearchResModel.baseViewModel.Message = "参数为空"; SearchResModel.baseViewModel.ResponseCode = 500; SearchResModel.TotalNum = 0; } return(Ok(SearchResModel)); }
//获取该认领信息具体情况 包括签到、签退 现场图片等 public MydutyClaim_InfoResModel GetMydutyDetail(SearchByIDAnduidModel viewModel) { MydutyClaim_InfoResModel MyResModel = new MydutyClaim_InfoResModel(); //获取基本信息 var model1 = _IMydutyClaimInfoRepository.GetInfoById(viewModel.MydutyClaim_InfoID); MyResModel.MiddleModel = _IMapper.Map <MydutyClaim_Info, MydutyClaimInfoMiddleModel>(model1); var dutyInfo = _ondutyClaimsInfoRepository.GetByID(model1.OndutyClaims_InfoId); if (dutyInfo != null) { //获取 社区、小区 MyResModel.MiddleModel.Subdistrict = dutyInfo.Subdistrict; var normalInfo = _normalizationInfo.NormalizationByID(dutyInfo.Normalization_InfoId); if (normalInfo != null) { MyResModel.MiddleModel.Community = normalInfo.CommunityName; } } //获取 签到签退图片等信息 List <MydutyClaim_Sign> handlelist = _mydutyClaim_Sign.GetByParas(viewModel); MydutyClaim_SignInfo signInfo = new MydutyClaim_SignInfo(); foreach (var item in handlelist) { //签到 if (item.type == "in") { signInfo.SignUpTime = item.CheckTime.ToString(); } //上传现场图片 if (item.type == "img") { var list = _vAttachmentRepository.GetMyList(item.id); var newlist = _IMapper.Map <List <VAttachment>, List <VAttachmentAddViewModel> >(list); signInfo.VAttachmentList = newlist; } //签退 if (item.type == "out") { signInfo.SignOutTime = item.CheckTime.ToString(); } } //状态 MydutyClaim_Sign handle = _mydutyClaim_Sign.GetByParasOne(viewModel); if (handle != null) { //签到 if (handle.type == "in") { MyResModel.MiddleModel.status = "img"; } //上传现场图片 if (handle.type == "img") { MyResModel.MiddleModel.status = "out"; } //签退 if (handle.type == "out") { MyResModel.MiddleModel.status = "done"; } } else { MyResModel.MiddleModel.status = "in"; } MyResModel.claim_SignInfo = signInfo; if (MyResModel.MiddleModel != null && MyResModel.claim_SignInfo != null) { MyResModel.isSuccess = true; MyResModel.baseViewModel.Message = "查询成功"; MyResModel.baseViewModel.ResponseCode = 200; MyResModel.TotalNum = 1; } else { MyResModel.isSuccess = false; MyResModel.baseViewModel.Message = "查询失败"; MyResModel.baseViewModel.ResponseCode = 400; MyResModel.TotalNum = 0; } return(MyResModel); }
//获取当前用户 今天以后的报名活动情况 日期列表 public List <string> GetMyAllDate(SearchByVIDModel vidModel) { List <string> list = new List <string>(); //获取我的报名活动情况 List <string> Infos = _IVA_SignRepository.GetMyList(vidModel.VID); List <VolunteerActivitySearchMiddle> Searches = new List <VolunteerActivitySearchMiddle>(); List <VolunteerActivity> middle = _IVolunteerActivityRepository.GetByIDList(Infos); Searches = _IMapper.Map <List <VolunteerActivity>, List <VolunteerActivitySearchMiddle> >(middle); //获取当前用户 今天以后的报名活动情况 日期列表 //如果签退时间在活动结束之后 则需要按照 签退时间 判断 Searches = Searches.Where(o => (o.SignOutEtime == null && o.Etime >= DateTime.Now) || (o.SignOutEtime != null && o.SignOutEtime >= DateTime.Now)).OrderBy(o => o.Stime).ToList(); foreach (var item in Searches) { //查看是否已经完结事件 bak3 显示 该用户针对活动的状态 var handle = _Va_HandleRepository.GetNewSign(vidModel.VID, item.ID); if (handle != null && handle.ID != null) { if (handle.type == "in") { item.bak3 = "上传现场图片"; } if (handle.type == "img") { item.bak3 = "待签退"; } if (handle.type == "out") { item.bak3 = "已完结"; } } else { item.bak3 = "待签到"; } if (item.bak3 != "已完结") { string date = DateTime.Parse(item.Stime.ToString()).ToString("yyyy-MM-dd"); if (!list.Contains(date)) { list.Add(date); } } } //获取我的 常态化管控认领 情况 20200617 List <MydutyClaim_Info> myduties = _mydutyClaimInfo.GetByUid(vidModel.VID); myduties = myduties.Where(o => DateTime.Parse(o.EndDutyTime.ToString()).AddMinutes(15) >= DateTime.Now && o.status == "1").OrderBy(o => o.StartDutyTime).ToList(); foreach (var item in myduties) { MydutyClaimInfoMiddleModel mydutyClaimInfo = new MydutyClaimInfoMiddleModel(); SearchByIDAnduidModel searchByID = new SearchByIDAnduidModel(); searchByID.MydutyClaim_InfoID = item.id; searchByID.uid = item.Userid; MydutyClaim_Sign ii = _mydutyClaim_Sign.GetByParasOne(searchByID); if (ii != null && ii.id != null) { if (ii.type == "in") { item.status = "上传现场图片"; } if (ii.type == "img") { item.status = "待签退"; } if (ii.type == "out") { item.status = "已完结"; } } else { item.status = "待签到"; } //已经完结的 事项不再显示,只显示待办信息 20200622 if (item.status != "已完结") { string date = DateTime.Parse(item.StartDutyTime.ToString()).ToString("yyyy-MM-dd"); if (!list.Contains(date)) { list.Add(date); } } } return(list); }
///获取当前用户 根据时间显示具体常态化管控认领 列表 20200617 public List <MydutyClaimInfoMiddleModel> GetMyDutyAllByDate(VolunteerActivitySearchByDateModel vidModel) { List <MydutyClaimInfoMiddleModel> models = new List <MydutyClaimInfoMiddleModel>(); //获取我的 常态化管控认领 情况 20200617 List <MydutyClaim_Info> myduties = _mydutyClaimInfo.GetByUid(vidModel.VID); if (!String.IsNullOrEmpty(vidModel.Date)) { myduties = myduties.Where(o => DateTime.Parse(o.StartDutyTime.ToString()).ToString("yyyy-MM-dd") == vidModel.Date && DateTime.Parse(o.EndDutyTime.ToString()).AddMinutes(15) >= DateTime.Now && o.status == "1").OrderBy(o => o.StartDutyTime).ToList(); } SearchByIDAnduidModel searchByID = new SearchByIDAnduidModel(); searchByID.uid = vidModel.VID; foreach (var item in myduties) { MydutyClaimInfoMiddleModel mydutyClaimInfo = new MydutyClaimInfoMiddleModel(); searchByID.MydutyClaim_InfoID = item.id; MydutyClaim_Sign ii = _mydutyClaim_Sign.GetByParasOne(searchByID); if (ii != null && ii.id != null) { if (ii.type == "in") { item.status = "上传现场图片"; } if (ii.type == "img") { item.status = "待签退"; } if (ii.type == "out") { item.status = "已完结"; //已经完结的 事项不再显示,只显示待办信息 20200621 //myduties.Remove(item); } } else { item.status = "待签到"; } mydutyClaimInfo = _IMapper.Map <MydutyClaim_Info, MydutyClaimInfoMiddleModel>(item); var dutyInfo = _ondutyClaimsInfoRepository.GetByID(item.OndutyClaims_InfoId); if (dutyInfo != null) { //获取 社区、小区 mydutyClaimInfo.Subdistrict = dutyInfo.Subdistrict; var normalInfo = _normalizationInfo.NormalizationByID(dutyInfo.Normalization_InfoId); if (normalInfo != null) { mydutyClaimInfo.Community = normalInfo.CommunityName; } } models.Add(mydutyClaimInfo); } models.RemoveAll(o => o.status.Equals("已完结")); return(models); }