public IHttpActionResult Post(ConstraintRec request) { request.OrgId = SecurityHelper.CurrentPrincipal.OrgId; // request.CreateBy = SecurityHelper.CurrentPrincipal.Account; request.CreateDate = DateTime.Now; var response = service.SaveConstraintRec(request); return(Ok(response)); }
public BaseResponse <IList <ConstraintRec> > QueryConstraintRecExtend(BaseRequest <ConstraintRecFilter> request) { //var response = base.Query<LTC_CONSTRAINTREC, ConstraintRec>(request, (q) => //{ // if (!string.IsNullOrEmpty(request.Data.OrgId)) // { // q = q.Where(m => m.ORGID == request.Data.OrgId && m.FEENO == request.Data.FeeNo); // } // q = q.OrderBy(m => m.CREATEDATE); // return q; //}); //return response; BaseResponse <IList <ConstraintRec> > response = new BaseResponse <IList <ConstraintRec> >(); var q = from n in unitOfWork.GetRepository <LTC_CONSTRAINTREC>().dbSet join e in unitOfWork.GetRepository <LTC_EMPFILE>().dbSet on n.RECORDBY equals e.EMPNO into res from re in res.DefaultIfEmpty() join e in unitOfWork.GetRepository <LTC_EMPFILE>().dbSet on n.CANCELEXECBY equals e.EMPNO into res2 from re2 in res2.DefaultIfEmpty() select new { ConstraintRec = n, RecordByName = re.EMPNAME, CancelExecByName = re2.EMPNAME }; q = q.Where(m => m.ConstraintRec.FEENO == request.Data.FeeNo && m.ConstraintRec.ORGID == request.Data.OrgId); q = q.OrderByDescending(m => m.ConstraintRec.CREATEDATE); response.RecordsCount = q.Count(); Action <IList> mapperResponse = (IList list) => { response.Data = new List <ConstraintRec>(); foreach (dynamic item in list) { ConstraintRec newItem = Mapper.DynamicMap <ConstraintRec>(item.ConstraintRec); newItem.RecordByName = item.RecordByName; newItem.CancelExecByName = item.CancelExecByName; 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 <ConstraintRec> SaveConstraintRec(ConstraintRec request) { var response = base.Save <LTC_CONSTRAINTREC, ConstraintRec>(request, (q) => q.SEQNO == request.SeqNo); //当增加主档,并且前端传入的数据含有Detail时,增加detail。 if (response != null && response.Data.SeqNo > 0 && request.Detail != null && request.Detail.Count > 0) { request.Detail.ForEach((p) => { p.SeqNo = response.Data.SeqNo; }); base.Save <LTC_CONSTRAINSBEVAL, ConstrainsBeval>(request.Detail, (q) => request.Detail.Any(p => p.Id == q.ID)); } return(response); }