Пример #1
0
 public BaseResponse <NursingHandover> SaveNursingHandover(NursingHandover request)
 {
     if (request.Id == 0)
     {
         request.CreateBy   = SecurityHelper.CurrentPrincipal.EmpNo;
         request.CreateDate = DateTime.Now;
         request.OrgId      = SecurityHelper.CurrentPrincipal.OrgId;
     }
     return(base.Save <LTC_NURSINGHANDOVER, NursingHandover>(request, (q) => q.ID == request.Id));
 }
Пример #2
0
        public BaseResponse <IList <NursingHandover> > QueryNursingHandover(BaseRequest <NursingHandoverFilter> request)
        {
            BaseResponse <IList <NursingHandover> > response = new BaseResponse <IList <NursingHandover> >();
            var q = from n in unitOfWork.GetRepository <LTC_NURSINGHANDOVER>().dbSet
                    join e_d in unitOfWork.GetRepository <LTC_EMPFILE>().dbSet on n.RECORDBY_D equals e_d.EMPNO into re_ds
                    join e_e in unitOfWork.GetRepository <LTC_EMPFILE>().dbSet on n.RECORDBY_E equals e_e.EMPNO into re_es
                    join e_n in unitOfWork.GetRepository <LTC_EMPFILE>().dbSet on n.RECORDBY_N equals e_n.EMPNO into re_ns
                    from re_d in re_ds.DefaultIfEmpty()
                    from re_e in re_es.DefaultIfEmpty()
                    from re_n in re_ns.DefaultIfEmpty()
                    select new
            {
                NursingRec = n,
                Nurse_D    = re_d.EMPNAME,
                Nurse_E    = re_e.EMPNAME,
                Nurse_N    = re_n.EMPNAME
            };

            if (request.Data.FeeNo.HasValue)
            {
                q = q.Where(m => m.NursingRec.FEENO == request.Data.FeeNo);
            }
            if (request.Data.RegNo.HasValue)
            {
                q = q.Where(m => m.NursingRec.REGNO == request.Data.RegNo);
            }
            q = q.OrderByDescending(m => m.NursingRec.CREATEDATE);
            response.RecordsCount = q.Count();
            Action <IList> mapperResponse = (IList list) =>
            {
                response.Data = new List <NursingHandover>();
                foreach (dynamic item in list)
                {
                    NursingHandover newItem = Mapper.DynamicMap <NursingHandover>(item.NursingRec);
                    newItem.Nurse_D = item.Nurse_D;
                    newItem.Nurse_E = item.Nurse_E;
                    newItem.Nurse_N = item.Nurse_N;
                    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 IHttpActionResult Post(NursingHandover baseRequest)
        {
            var response = service.SaveNursingHandover(baseRequest);

            return(Ok(response));
        }