public IHttpActionResult Post(BedSoreRec request) { request.OrgId = SecurityHelper.CurrentPrincipal.OrgId; request.CreateBy = SecurityHelper.CurrentPrincipal.EmpNo; request.CreateDate = DateTime.Now; var response = service.SaveBedSoreRec(request); return(Ok(response)); }
public BaseResponse <IList <BedSoreRec> > QueryBedSoreRecExtend(BaseRequest <BedSoreRecFilter> request) { //var response = base.Query<LTC_BEDSOREREC, BedSoreRec>(request, (q) => //{ // if (!string.IsNullOrEmpty(request.Data.OrgId)) // { // q = q.Where(m => m.ORGID == request.Data.OrgId && m.FEENO == request.Data.FeeNo); // } // if (!string.IsNullOrWhiteSpace(request.Data.Degree)) // { // q = q.Where(m => request.Data.Degree == m.DEGREE); // } // q = q.OrderBy(m => m.CREATEDATE); // return q; //}); //return response; BaseResponse <IList <BedSoreRec> > response = new BaseResponse <IList <BedSoreRec> >(); var q = from n in unitOfWork.GetRepository <LTC_BEDSOREREC>().dbSet join e in unitOfWork.GetRepository <LTC_EMPFILE>().dbSet on n.EVALUTEBY equals e.EMPNO into res from re in res.DefaultIfEmpty() select new { BedSoreRec = n, EvaluteNameBy = re.EMPNAME, }; q = q.Where(m => m.BedSoreRec.FEENO == request.Data.FeeNo && m.BedSoreRec.ORGID == request.Data.OrgId); q = q.OrderByDescending(m => m.BedSoreRec.SEQ); response.RecordsCount = q.Count(); Action <IList> mapperResponse = (IList list) => { response.Data = new List <BedSoreRec>(); foreach (dynamic item in list) { BedSoreRec newItem = Mapper.DynamicMap <BedSoreRec>(item.BedSoreRec); newItem.EvaluteNameBy = item.EvaluteNameBy; response.Data.Add(newItem); } }; if (request != null && request.PageSize > 0) { var list = q.Skip((request.CurrentPage - 1) * request.PageSize).Take(request.PageSize).ToList(); response.PagesCount = GetPagesCount(request.PageSize, response.RecordsCount); mapperResponse(list); } else { var list = q.ToList(); mapperResponse(list); } return(response); }
public BaseResponse <BedSoreRec> SaveBedSoreRec(BedSoreRec request) { var result = base.Save <LTC_BEDSOREREC, BedSoreRec>(request, (q) => q.SEQ == request.Seq); //当增加主档,并且前端传入的数据含有Detail时,增加detail。 if (request.Seq > 0 && result != null && request.Detail != null && request.Detail.Count > 0) { request.Detail.ForEach((p) => { p.Seq = result.Data.Seq; p.CreateBy = SecurityHelper.CurrentPrincipal.LoginName; p.CreateDate = DateTime.Now; }); base.Save <LTC_BEDSORECHGREC, BedSoreChgrec>(request.Detail, (q) => request.Detail.Any(p => p.Id == q.ID)); } return(result); }